サービス アカウントの選択

Microsoft SQL Server Analysis Services のインスタンスは、複数の異なるアカウントのセキュリティ コンテキストで実行するよう選択することができます。ただし、Analysis Services のログオン アカウントとしては、ドメインまたはローカルのユーザー アカウントを使用することをお勧めします。ドメイン ユーザー アカウントまたはローカル ユーザー アカウントのどちらを使用するかは、次の説明のように、Analysis Services がネットワーク リソースに接続する必要があるかどうかによって決まります。

  • Analysis Services がログオン アカウントのセキュリティ コンテキストでネットワーク リソースに接続する必要がある場合は、専用ドメイン ユーザー アカウントのセキュリティ コンテキストで Analysis Services のインスタンスを実行します。

  • Analysis Services がログオン アカウントのセキュリティ コンテキストでネットワーク リソースに接続する必要がない場合は、ローカル ユーザー アカウントまたはドメイン ユーザー アカウントのセキュリティ コンテキストで Analysis Services のインスタンスを実行します。

ログオン アカウントを選択したら、そのログオン アカウントを別の目的で使用しないことをお勧めします。ログオン アカウントの使用を制限すると、接続文字列やパスワードの暗号化を保護できます。

ログオン アカウントとしての専用ドメイン ユーザー アカウントの使用

ドメイン ユーザー アカウントは、Active Directory ディレクトリ サービスの内部で作成されるユーザー アカウントです。このアカウントは、ドメインの Authenticated Users グループのメンバです。ドメイン ユーザー アカウントのセキュリティ コンテキストで実行されているサービスは、そのドメイン ユーザー アカウントの Kerberos チケットをリモート サーバーに提示します。ドメイン ユーザー アカウントのセキュリティ コンテキストで実行されているサービスは、Authenticated Users または特定のユーザー アカウントがアクセス権を持っているリモート サーバー上のリソースにアクセスできます。

ログオン アカウントとしてのローカル ユーザー アカウントの使用

ローカル ユーザー アカウントとは、ローカル コンピュータで作成される Windows ユーザー アカウントのことです。ローカル ユーザー アカウントのセキュリティ コンテキストで実行されているサービスは、そのローカル ユーザー アカウントのアクセス トークンをリモート サーバーに提示します。それと一致するユーザー名とパスワードがリモート サーバーで構成されている場合、ローカル ユーザー アカウントを使用するサービスは、同一の名前を持つアカウントがアクセス権を持つリモート サーバー上のリソースにアクセスできるようになります。このシナリオは実現可能ですが、別々のアカウントを管理し、各パスワードの同期を保たなければならないので、管理オーバーヘッドの増加につながります。

ログオン アカウントとしてのその他のアカウントの使用

Analysis Services のインスタンスは、専用ドメイン ユーザー アカウントやローカル ユーザー アカウントだけでなく、次のアカウントのコンテキストで実行することもできます。

  • Local System
    これは、ローカル コンピュータ上で管理者権限を持っている定義済みローカル アカウントです。Local System アカウントのセキュリティ コンテキストで実行されているサービスは、ローカル コンピュータの資格情報をリモート サーバーに提示します。Local System アカウントはドメインの Everyone グループに所属しないので、Local System アカウントのセキュリティ コンテキストで実行されているサービスは、認証済みセッションを確立できません。その結果、このアカウントを使用するサービスは、Null セッションでのみ、ネットワーク リソースにアクセスできます。

  • LocalService
    これは、ローカル コンピュータ上で認証済みユーザーの権限を持っている定義済みローカル アカウントです。LocalService アカウントのセキュリティ コンテキストで実行されているサービスは、匿名の資格情報をリモート サーバーに提示します。その結果、このアカウントを使用するサービスは、匿名アクセスを許可するネットワーク リソースにだけアクセスできます。

  • NetworkService
    これは、ローカル コンピュータ上で認証済みユーザーの権限を持っている定義済みローカル アカウントです。NetworkService アカウントのセキュリティ コンテキストで実行されているサービスは、ローカル コンピュータの資格情報を Authenticated User としてリモート サーバーに提示します。Authenticated User は、ドメイン内の Everyone グループのメンバであるユーザーです。その結果、このアカウントを使用するサービスは、Authenticated User がアクセス権を持っているリモート サーバー上のリソースにアクセスできます。このアカウントを使用するサービスがリモート リソースにアクセスできるようにするには、Analysis Services を実行しているサーバーの名前をリモート リソースに追加する必要があります。

アカウントが上記のリストに含まれているかどうかにかかわらず、セキュリティのベスト プラクティスは、できる限り権限の少ないアカウントのセキュリティ コンテキストで Analysis Services を実行することです。Local System アカウントは、開発環境には適していますが、この管理アカウントは、権限が多すぎるので運用環境にはお勧めできません。また、LocalService アカウントと NetworkService アカウントもお勧めできません。LocalService アカウントと NetworkService アカウントは、最小限の権限を持つサービス ログオン アカウントとして使用するよう設計されていますが、暗号化された Analysis Services 接続文字列とパスワードが Analysis Services ログオン アカウントによって暗号化解除される可能性があるので、Analysis Services にはお勧めできません。つまり、これらの接続文字列とパスワードは、Analysis Services と同じログオン アカウントで実行されている別の Windows サービスによって暗号化解除される可能性があります。

Analysis Services ログオン アカウントの指定

どのログオン アカウント コンテキストを使用するかを決定したら、セットアップ中に [サービス アカウント] ページでログオン アカウントを指定します。セットアップ プロセスによって、次に示すローカル コンピュータ上のすべての必要な権限が指定したログオン アカウントに付与されます。

  • 走査チェックのバイパス

  • トークン オブジェクトの作成

  • セキュリティ監査の生成

  • メモリ内のページのロック

  • プロセス レベル トークンの置換

Analysis Services ログオン アカウントには、Analysis Services のインスタンスのすべてのファイルに対する NTFS フル コントロール権限も付与されます。データ ソースに対する権限など、リモート サーバー上の必要な権限は、ログオン アカウントに特別に付与する必要があります。

注意

Analysis Services ログオン アカウントは、Analysis Services のインスタンスにログオンするための権限は持っていませんが、Analysis Services のインスタンスのすべてのファイルに対するフル コントロール アクセス権を持っています。