1

ASP.NET V2 Web アプリケーションを展開環境に展開する際に問題があり、SQL サーバーのセットアップに問題があります。

Web サイトを実行すると、ユーザー 'MOETP\MOERSVPWLG$' のログインに失敗しました。データベースに接続しようとするとエラーが発生します。

これは、アプリケーションに必要な動作であるネットワーク サービス ユーザーのようですが、ネットワーク サービス ユーザーがデータベースにアクセスすることを許可できないようです。

セットアップに関するいくつかの詳細。IIS 6 と SQL Server 2005 は両方とも、展開環境の同じサーバーにセットアップされています。私が行ったテスト セットアップからの唯一の変更点は、データベース接続文字列を新しいライブ データベースにポイントし、もちろんすべてをコピーすることです。

この時点で、asp.net からの接続を許可するには、SQL サーバーのセットアップに対して何かを行う必要があると思います。しかし、それが何であるかはわかりません。

何か案は?

4

5 に答える 5

1

データベースに問題なく接続でき、統合 Windows 認証を使用しているようです。

統合 Windows 認証を使用すると、データベースへの接続では、アプリケーション プールのユーザー ID が使用しているものは何でも使用されます。asp.net が使用しているユーザー ID がデータベース サーバー上にあることを確認する必要があります。

于 2008-09-18T23:23:14.983 に答える
1

新規インストールの場合、すべてがセットアップされていない可能性があります。SQL Server 構成マネージャー ( http://msdn.microsoft.com/en-us/library/ms174212.aspx ) を確認してください。ステップ バイ ステップの手順http://download.pro.parallels.com/10.3.1/docs/windows/Guides/pcpw_upgrade_guide/7351.htm

于 2008-09-18T23:26:06.520 に答える
1

投稿で示したユーザー名は、あるマシンの Network Service アカウントが他のマシンから見た場合の名前です (つまり、「DOMAIN\MACHINENAME$」)。

あるマシンの IIS6 から別のマシンの SQL Server に接続し、アプリケーション プールのプロセス ID に Network Service を使用している場合は、'MOETP\MOERSVPWLG$' を SQL Server へのログインとして明示的に追加し、マップする必要があります。適切なデータベース ユーザーとロールに。その名前をログイン名とまったく同じように入力します (もちろん、引用符は除きます)。

于 2008-09-19T00:15:50.410 に答える
0

いくつかの異なる可能性があります。

統合 Windows 認証を使用していますか? その場合は、ユーザー ASP.net がデータベースと通信できるように実行されていることを確認する必要があります (または、データベースと通信できるものを偽装します)。

Web サーバーにはデータベースと通信する権限がありますか? Web サーバーが DMZ に配置されることがあります。

SQL Server ログインを使用している場合、本番サーバーに同じログインが存在し、同じ権限がありますか?

于 2008-09-18T23:20:06.707 に答える
0

SQL サーバーにログインしようとしているユーザー用に作成されたログインがあることを確認してください。

于 2008-09-18T23:17:32.203 に答える