処理権限の付与 (Analysis Services)
管理者は Analysis Services 処理操作専用のロールを作成し、特定のタスクを他のユーザーまたはスケジュールされた自動処理向けのアプリケーションに委任することができます。処理権限はデータベース、キューブ、ディメンション、およびマイニング構造レベルで許可することができます。非常に大きなキューブまたはテーブル データベースを使用した作業をするのでなければ、それぞれが依存関係を持つものなど、すべてのオブジェクトを含めて、データベース レベルで処理権限を付与することを推奨します。
権限は、オブジェクトを権限および Windows ユーザーまたはグループ アカウントと関連付けるロールにより付与されます。権限は追加式であることに注意してください。あるロールがキューブを処理する権限を付与し、別のロールがディメンションを処理する権限を同じユーザーに付与する場合、2 つの異なるロールの権限は結合し、キューブの処理とデータベース内の指定されたディメンションの処理の両方を行う権限をユーザに付与します。
重要 |
---|
処理権限のみを持つユーザーは、SQL Server Management Studio または SQL Server データ ツール (SSDT) を使用して、Analysis Services に接続し、オブジェクトを処理することはできません。これらのツールがオブジェクト Read Definition メタデータにアクセスするためには 権限が必要です。どちらのツールも使用できない場合、XMLA スクリプトを使用して処理操作を実行する必要があります。 テストの目的で Read Definition 権限も付与することを推奨します。Read Definition 権限と Process Database 権限の両方を持っているユーザーは、SQL Server Management Studio で対話的にオブジェクトを処理できます。詳細については、「オブジェクト メタデータにおける定義の読み取り権限の付与 (Analysis Services)」を参照してください。 |
処理権限をデータベース レベルで設定する
このセクションでは、データベース内のすべてのキューブ、ディメンション、マイニング構造、およびマイニング モデルに対して、管理者以外のユーザーが処理を有効化する方法を説明します。
SQL Server Management Studio で、Analysis Services のインスタンスに接続し、データベース フォルダーを開き、データベースを選択します。
[ロール] を右クリックして [新しいロール] を選択します。名前と説明を入力します。
[全般] ペインで、[データベースの処理] チェック ボックスをオンにします。さらに、[定義の読み取り] を選択して、SQL Server Management Studio などの SQL Server ツールによる対話的な処理を有効にします。
[メンバーシップ] ペインで、このデータベース内の任意のオブジェクトを処理する権限を持つ、Windows ユーザーおよびグループ アカウントを追加します。
[OK] をクリックすると、ロール定義が完了します。
個別のオブジェクトに処理権限を設定する
個別のキューブ、ディメンション、データ マイニング構造またはモデルに処理権限を設定できます。
共に処理する必要があるオブジェクトを誤って除外した場合、処理は失敗することがあります (たとえば、キューブで処理を有効化し、関連するディメンションでは処理を有効化しなかった場合など)。オブジェクトの依存関係は見逃しがちなため、個別のオブジェクトに処理権限を設定する際は、綿密なテストが不可欠です。
SQL Server Management Studio で、Analysis Services のインスタンスに接続し、データベース フォルダーを開き、データベースを選択します。
[ロール] を右クリックして [新しいロール] を選択します。名前と説明を入力します。
[全般] ペインで、[データベースの処理] チェック ボックスをオフします。データーベース権限は、ロールの選択肢をグレー表示、つまり選択不可にすることで、下位オブジェクトの権限設定機能をオーバーライドします。
厳密には、専用処理ロールにデータベース権限は必要ありません。しかし、データベース レベルで [定義の読み取り] がない場合、SQL Server Management Studio でデータベースを表示できず、テストがより困難になります。
以下のように、処理する個別のオブジェクトを選択します。
[キューブ] ペインで、各キューブの [処理] チェック ボックスをオンにします。
[ディメンション] ペインで、[すべてのデータベース ディメンション] を選択し、各ディメンションの [処理] チェック ボックスをオンにします。または、すべての行を選択し、Shift キーを押したままクリックして、チェック ボックスの選択を切り替えます。
[メンバーシップ] ペインで、これらのオブジェクトを処理する権限を持つ、Windows ユーザーおよびグループ アカウントを追加します。
[OK] をクリックすると、ロール定義が完了します。
テスト処理
Shift キーを押したまま SQL Server Management Studio を右クリックして、[別のユーザーとして実行] を選択し、テスト対象のロールに割り当てられた Windows アカウントを使用して、Analysis Services のインスタンスに接続します。
データベース フォルダーを開き、データベースを選択します。アカウントがメンバーシップを持っているロールに対して可視的なデータベースのみ���表示されます。
キューブまたはディメンションを右クリックし、[処理] をクリックします。処理オプションを選択します。オブジェクトのすべての組み合わせのためにすべてのオプションをテストします。不足したオブジェクトに起因するエラーが発生した場合、そのオブジェクトをロールに追加します。
データ マイニング構造に処理権限を設定する
データ マイニング構造を処理する権限を付与するためのロールを作成できます。これには、すべてのマイニング モデルの処理が含まれます。
マイニング モデルおよび構造の参照に使用される [ドリルスルー] 権限と [定義の読み取り] 権限はアトミックで、同じロールに追加したり、異なるロールに分割したりすることができます。
SQL Server Management Studio で、Analysis Services のインスタンスに接続し、データベース フォルダーを開き、データベースを選択します。
[ロール] を右クリックして [新しいロール] を選択します。名前と説明を入力します。[全般] ペインで、データベース権限のチェック ボックスがオフになっていることを確認します。データーベース権限は、ロールの選択肢をグレー表示、つまり選択不可にすることで、下位オブジェクトの権限設定機能をオーバーライドします。
[マイニング構造] ペインで、各マイニング構造の [処理] チェック ボックスをオンにします。
[メンバーシップ] ペインで、このデータベース内の任意のオブジェクトを処理する権限を持つ、Windows ユーザーおよびグループ アカウントを追加します。
[OK] をクリックすると、ロール定義が完了します。
関連項目
タスク
データベース権限の付与 (Analysis Services)