質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

ASP.NET

ASP.NETは動的なWebサイトやWebアプリケーション、そしてWebサービスを構築出来るようにする為、Microsoftによって開発されたウェブアプリケーション開発フレームワークです。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

解決済

1回答

223閲覧

asp.netのreactテンプレートを使用してのDB接続時に証明書エラーが出る

mmm1007

総合スコア6

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

ASP.NET

ASP.NETは動的なWebサイトやWebアプリケーション、そしてWebサービスを構築出来るようにする為、Microsoftによって開発されたウェブアプリケーション開発フレームワークです。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

0クリップ

投稿2024/09/21 16:22

編集2024/09/21 16:22

実現したいこと

sqlserver接続時の証明書エラーを解決したい

発生している問題・分からないこと

ローカルのsqlserverに接続しようとした際に証明書エラーがでます。
MVCで試したときは、

Trusted_Connection=True;

をDB接続文字列の末尾にくっつけることで出なくなりましたが、Reactテンプレートで今回試したところ、上記の文字列をDB接続文字列の末尾にくっつけてもこのエラーが出続けています。
ちなみにSSMSをつかってsqlserverには接続できていました。

エラーメッセージ

error

1Microsoft.Data.SqlClient.SqlException: 'A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - 信頼されていない機関によって証明書チェーンが発行されました。)'

該当のソースコード

C#

1"自分のプロジェクト名DBConnectionString": "Server=(localdb)\\mssqllocaldb;Database=aspnet-53bc9b9d-9d6a-45d4-8429-...;Trusted_Connection=True;TrustServerCertificate=True"

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

TrustServerCertificate=TrueまたはEncrypt=Falseを接続文字列の末尾にくっつけたりしてみたが変わらなかった

補足

reactテンプレート
react18.2
.net6

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hqf00342

2024/09/22 10:27

EntityFramework Coreを使っていると思いますが、これはご自身でnugetから導入していますか? EF Coreのバージョンはいくつでしょうか? EFCoreバージョン7で確かこのあたりの挙動変更が破壊的変更として書かれていたと思います。 Reactテンプレートでも生成されるASP.NETはMVC(API)なので、MVCで出来ていたのであればバージョン合わせればいけそうな気はします。
hqf00342

2024/09/22 10:53

EFCore7のドキュメントを確認したところ正しくは「Microsoft.Data.SqlClient」の破壊的変更でした。 https://learn.microsoft.com/ja-jp/ef/core/what-is-new/ef-core-7.0/breaking-changes?tabs=v7#encrypt-defaults-to-true-for-sql-server-connections 書かれている対処(TrustServerCertificate)は正しいと思うのでバージョン以外に原因が思いつかないですね。 あとは接続文字列がDevelopとProductionで別で片方しか変えてない(実は違う接続文字列だった)、とかぐらいでしょうか。
mmm1007

2024/09/22 18:33 編集

EF Coreはnugetから導入しましてバージョンが7.0.7でした。 ASP.NETはMVCのほうでも試したところ、同じエラーになっておりました。 MVCのほうではとくにソースや設定など変更していなかったので、reactテンプレート導入した時に何か起こったのか、または別の原因なのかよくわからない状況です。。 ちなみにvisual studioのsqlserverオブジェクトエクスプローラーからもテーブルのデータなど見ることができます
hqf00342

2024/09/23 04:13

「SQLServerオブジェクトエクスプローラー」で接続できているなら「aspnet-53bc9b9d-9...」のプロパティを開き、接続文字列が確認できると思います。 書き方は少し違う(Server=ではなくData Source=になっている等)と思いますが意味は同じなので参考にするとよいかもしれません。
guest

回答1

0

自己解決

EF Coreがver7のものを使っていましたがMicrosoft.AspNetCore.SpaProxy(ver6)にそろえたらエラーがなくなりました。

投稿2024/09/24 15:14

mmm1007

総合スコア6

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問