組み込みの Web サーバーを使用してローカルで Web サイトを実行すると、当社の Web サイトはデータベースに正しく接続されます。しかし、IIS を実行しているサーバーにサイトを展開すると、データベース接続エラーが発生します。データベース サーバーは IIS サーバーとは異なります。IIS と同じサーバー上の別のデータベースへの信頼された接続は正常に機能することに注意してください。
信頼できる接続を使用して別のサーバー上の SQL データベースに接続するには、何をする必要がありますか?
組み込みの Web サーバーを使用してローカルで Web サイトを実行すると、当社の Web サイトはデータベースに正しく接続されます。しかし、IIS を実行しているサーバーにサイトを展開すると、データベース接続エラーが発生します。データベース サーバーは IIS サーバーとは異なります。IIS と同じサーバー上の別のデータベースへの信頼された接続は正常に機能することに注意してください。
信頼できる接続を使用して別のサーバー上の SQL データベースに接続するには、何をする必要がありますか?
Cassini を使用して Web サイトを実行している場合、Web サーバー プロセスで使用されるアカウントは、Windows マシンへのログオンに使用する自分のアカウントです。そのアカウントは IIS では異なります。
信頼できる接続で必要となる可能性があるよりも広範なアクセスに対してデータベースを開くことのセキュリティへの影響を考慮してください。おそらく、サービス アカウントで Windows 認証を使用できます。つまり、権限が制限された SQL Server でアプリケーション固有のユーザーを作成します。次に、資格情報の受け渡しを回避しながら、接続プールの利点を得ることができます。
接続しようとしているデータベースへのアクセスを提供するようにデータベース サーバーを構成する必要があるようです。
SQL Server の場合、SQL Server Enterprise Manager にログインし、[セキュリティ] -> [ログイン] で該当するユーザー (おそらく Web サーバーのネットワーク サービスまたは ASP.NET アカウント) のプロパティを開き、[データベース アクセス] タブに移動して、接続先のデータベースの [許可] チェックボックスがオンになっています。
IIS のアプリ ドメインが SQL Server への接続に使用しているユーザー アカウントを確認します。IIS のアカウントもネットワーク リソースにアクセスできない可能性があり、これが他のデータベース サーバーに到達する際の問題を説明しています。