Asp.net MVC5 テンプレートを使用して Web サイトを開発しています。このウェブサイトには、明らかにいくつかの情報を含むデータベースがあります。この MS-Sql データベースは、リモート VM で実行されます。コーディング中に、統合された IIS Express と前述のデータベースを使用してこのサイトをテストしました。
ここで、この Web サイトを実際の IIS 10.0 サーバーに公開したいと考えました。この IIS サーバーは、データベースと同じ VM 上で実行されます。
以下のようにサイトを公開しました。
VS15 でプロジェクトを右クリック > 発行 > ファイル システム (発行方法) > コンパイルされたデータを前述の VM にコピー > IIS マネージャーで、コンパイルされたソース データに基づいて新しい Web サイトを作成しました。
今問題:
この Web サイト (localhost またはクライアントからのリモート経由) を実行しようとすると、次のエラーが発生します。
ユーザー「DOMAIN\MACHINENAME$」のログインに失敗しました。例外の詳細: System.Data.SqlClient.SqlException: ユーザー 'DOMAIN\MACHINENAME$' のログインに失敗しました。
この 2 つの接続文字列は web.config にあり、どちらも Asp.Net Frameork から自動生成されます。
<connectionStrings>
<add name="InfoScreenContext" connectionString="data source=vsdev1972\;initial catalog=InfoScreen;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" />
<add name="UserProfile" connectionString="data source=vsdev1972\;initial catalog=InfoScreen;integrated security=True;multipleactiveresultsets=True;application name=EntityFramework" providerName="System.Data.SqlClient" />
</connectionStrings>
私は一日中解決策を探していましたが、これらのアプローチはどれもうまくいきませんでした:
- この DOMAIN\MACHINENAME$ ユーザーをデータベース ユーザーに追加する
- IIS マネージャーで Windows 認証を有効にする
- 接続文字列を編集しようとしました
- 全員に付与されたソース アクセス権
何か案は?さらに詳しい情報が必要な場合は、私に連絡してください!