統合パイプライン モードの AppPool を使用して IIS 7 Web サイトを実行しています。AppPool は NetworkService などの ID では実行されません (目的により) が、独自の AppPool ID (IIS AppPool\MyAppPool) を使用します。
これは、いわゆるサービス アカウントまたは仮想アカウントです。(完全なアカウントではないユーザー アカウントです...)
このサービス アカウント (IIS AppPool\MyAppPool) に、SQL Server 2008 Express (混合認証モードで実行) に接続するための権限を付与したいと思います。
SQL Server は通常のユーザー アカウントを追加できますが、IIS AppPool\MyAppPool 仮想アカウントは有効なログオンに追加できません (SQL Server ではアカウントが見つからないと表示されます)。
仮想アカウントを機能させるために、何かトリックや有効にする必要があるものはありますか? (taskmgr によると、w3wp.exe プロセスはこの ID で実行されますが、NTFS セキュリティでもアカウントを使用することはできません...)
ご協力いただきありがとうございます!
ベストアンサー1
これIIS APPPOOL\AppPoolName
は機能しますが、前述のように、有効な AD 名ではないため、[ユーザーまたはグループの選択] ダイアログ ボックスで検索しても表示されません (実際には見つかりますが、実際のシステム アカウントであると認識され、そのように処理しようとします...これは機能せず、見つからないというエラー メッセージが表示されます)。
私がこれをどうやって動作させたかは以下の通りです:
- SQL Server Management Studio で、セキュリティフォルダー (データベース、サーバー オブジェクトなどのフォルダーと同じレベルのセキュリティ フォルダー。個々のデータベース内のセキュリティ フォルダーではありません)を探します。
- ログインを右クリックして「新しいログイン」を選択します
- ログイン名フィールドに入力します
IIS APPPOOL\YourAppPoolName
(検索をクリックしないでください) - 必要に応じてその他の値を入力します (認証タイプ、デフォルトのデータベースなど)
- OKをクリック
AppPool 名が実際に存在する限り、ログインが作成されるはずです。