0

MDF で localdb を使用して、ラップトップで MVC4 Web アプリケーションを作成しました。ファイル。次に、プロジェクトをデスクトップにエクスポートし、IIS を実行している Win2k12 の Web サーバーにこれらのファイルをコピーペーストしました。

それをコピーした後、同じWin2k12サーバーで実行されるMSSQL Express 2012サーバーにテーブルを作成し、プロジェクトのweb.confを変更して、mdfファイルではなくサーバーをターゲットにしました。

そして、ここですべてが停止します。データを送信しようとすると、次のエラーが表示されます (SQL サーバーと通信する必要があります。SQL サーバーと通信しようとしない限り、ページの閲覧は問題ありません)。

ログインで要求されたデータベース「mc.foo.net」を開けません。ログインに失敗しました。ユーザー 'IIS APPPOOL\mc.foo.net' のログインに失敗しました。

そして、ユーザー IIS APPOOL は私のラップトップから継承されたものであると推測しています.Win2k12サーバーにこのユーザーはいません。どうすればそれを変更できますか? そして何に?複数のユーザーがいます (SQL Server Manager のサーバーのセキュリティから):

  • NT AUTHORITY\SYSTEM
  • NT サービス\MSSQLSERVER
  • NT サービス\SQL ライター
  • NT サービス\Winmgmt

私のドメイン管理者に加えて。どうすればこれを修正できますか?

4

2 に答える 2

0

あなたの問題は、ユーザーが DB サーバーに対する権限を持っていないようです。

これを回避するには複数の方法があります。

  1. 統合セキュリティを介して DB に接続している場合... ローカル SQL サーバーまたはドメインのユーザー名とパスワードに変更します。

  2. appPool アカウントに dataReader または dataWriter アクセス権を付与します (本番環境にはお勧めしません)。

于 2013-06-24T22:06:11.743 に答える