キューブまたはモデル権限の付与 (Analysis Services)
キューブまたは表形式モデルは、Analysis Services データ モデルの主要なクエリ オブジェクトです。アドホック データ探索のために Excel から多次元または表形式データに接続する場合、ユーザーは通常、ピボット レポート オブジェクトの背後のデータ構造として特定のキューブまたは表形式モデルを最初に選びます。このトピックでは、キューブまたは表形式データへのアクセスに必要な権限を付与する方法について説明します。
既定では、データベース内のキューブに対してクエリを実行する権限を持っているのは、サーバー管理者またはデータベース管理者だけです。管理者以外のユーザーがキューブにアクセスするには、キューブを含むデータベースのために作成されたロールのメンバーシップが必要です。メンバーシップは Windows のユーザーまたはグループ アカウントに対してサポートされ、Active Directory またはローカル コンピューター内で定義されます。始める前に、これから作成するロールのメンバーシップを割り当てるアカウントを決定してください。
キューブへの Read アクセス権を付与すると、キューブ内のディメンション、メジャー グループ、パースペクティブに対する権限も付与されます。ほとんどの管理者は、キューブ レベルで読み取り権限を付与し、特定のオブジェクト、関連付けられているデータ、またはユーザー ID ごとに権限を制限します。
その後のソリューション配置中にロール定義を保持するため、SQL Server Data Tools でロールをモデルの不可欠な部分として定義し、データベースがパブリッシュされた後、データベース管理者に SQL Server Management Studio でロールのメンバーシップを割り当ててもらうことをお勧めします。ただし、どちらのツールでも両方のタスクを実行できます。手順を簡単にするため、ここでは SQL Server Management Studio を使ってロールの定義とメンバーシップの両方を行います。
注 |
---|
ソース ファイルからサーバーにキューブを配置したり、ロールを作成してメンバーを割り当てることができるのは、フル コントロール権限を持つサーバー管理者またはデータベース管理者だけです。これらの権限レベルの詳細については、「サーバーの管理権限の許可 (Analysis Services)」および「データベース権限の付与 (Analysis Services)」をご覧ください。 |
手順 1 :ロールを作成する
SSMS で、Analysis Services に接続します。この手順の詳細については、「クライアント アプリケーションからの接続 (Analysis Services)」をご覧ください。
オブジェクト エクスプローラーで [データベース] フォルダーを開き、データベースを選びます。
[ロール] を右クリックし、[新しいロール] をクリックします。ロールがデータベース レベルで作成され、データベース内のオブジェクトに適用されることに注目してください。ロールをデータベース間で共有することはできません。
[全般] ペインに、名前と、オプションで説明を入力します。このペインには、フル コントロール、データベースの処理、定義の読み取りなどのデータベース権限も含まれています。これらの権限はいずれも、キューブまたは表形式モデルに対してクエリを実行する場合は不要です。これらの権限の詳細については、「データベース権限の付与 (Analysis Services)」をご覧ください。
名前とオプションの説明を入力したら、次に進みます。
手順 2 :メンバーシップを割り当てる
[メンバーシップ] ペインで [追加] をクリックし、このロールを使ってキューブにアクセスする Windows ユーザーまたはグループ アカウントを入力します。Analysis Services は、Windows セキュリティ ID だけをサポートします。この手順ではデータベース ログインを作成していないことに注目してください。Analysis Services では、ユーザーは Windows アカウントを使って接続します。
次の手順に進み、キューブ権限を設定します。
[データ ソース] ペインをスキップしていることに注目してください。Analysis Services の通常のユーザーのほとんどは、データ ソース オブジェクトに対する権限を必要としません。この権限を設定するケースの詳細については、「データ ソース オブジェクトにおける権限の付与 (Analysis Services)」をご覧ください。
手順 3 :キューブ権限を設定する
[キューブ] ペインでキューブを選び、[読み取り] または [読み取り/書き込み] アクセスをクリックします。
ほとんどの操作は、[読み取り] アクセスで十分です。[読み取り/書き込み] は、処理ではなく書き戻しにのみ使われます。この機能の詳細については、「パーティションの書き戻しの設定」をご覧ください。
複数のキューブを選べるだけでなく、[ロールの作成] ダイアログ ボックスで利用できる他のオブジェクトも選べることに注目してください。キューブに対する権限を付与すると、そのキューブに関連付けられたディメンションとパースペクティブへのアクセスが承認されます。キューブ内で既に表現されているオブジェクトを手動で追加する必要はありません。
特定のメジャーを利用不可能にするなどの目的で、オブジェクトまたはユーザーごとに承認を変える必要がある場合は、特定のオブジェクトおよびセルに対して個別にアクセスを許可または拒否できます。詳細については、「ディメンション データへのカスタム アクセス権の付与 (Analysis Services)」および「セル データへのカスタム アクセス権の付与 (Analysis Services)」を参照してください。
この時点で [OK] をクリックすると、このロールのすべてのメンバーが、指定した権限レベルでキューブにアクセスできるようになります。
[キューブ] ペインでは、[ドリルスルーとローカル キューブ] を使ってサーバー キューブからローカル キューブを作成する権限をユーザーに付与できます。また、[ドリルスルー] 権限を使ってドリルスルーだけを許可することもできます。
最後に、このペインでキューブに対する [データベースの処理] 権限を付与すると、このロールのすべてのメンバーがこのキューブのデータを処理できるようになります。通常、処理は制限される操作なので、そのタスクを管理者に任せるか、そのタスク専用のロールを別個に定義することをお勧めします。処理権限のベスト プラクティスの詳細については、「処理権限の付与 (Analysis Services)」をご覧ください。
手順 4 :テスト
Excel を使ってキューブへのアクセス権限をテストします。次で説明する方法 (アプリケーションを管理者以外のユーザーとして実行する) に従って、SQL Server Management Studio を使うこともできます。
注 Analysis Services 管理者の場合は、管理者権限がより低い権限を持つロールと組み合わされるため、ロールの権限を独立してテストしにくくなります。テストを簡単にするため、テストするロールに割り当てられたアカウントを使って SSMS の 2 つ目のインスタンスを開くことをお勧めします。
Shift キーを押したまま [Excel] を右クリックして、[別のユーザーとして実行] オプションにアクセスします。このロールのメンバーシップを持ついずれかの Windows ユーザーまたはグループ アカウントを入力します。
Excel が開いたら、[データ] タブを使って Analysis Services に接続します。異なる Windows ユーザーとして Excel を実行しているため、ロールをテストするときに使う資格情報の種類としては、[Windows 認証を使用する] オプションが適切です。この手順の詳細については、「クライアント アプリケーションからの接続 (Analysis Services)」をご覧ください。
接続時にエラーが発生した場合は、Analysis Services に対するポート構成を確認し、サーバーがリモート接続を受け入れることを確認してください。ポート構成については、「Analysis Services のアクセスを許可するための Windows ファイアウォールの構成」をご覧ください。
手順 5 :ロールの定義と割り当てのスクリプトを生成する
最後の手順として、作成したばかりのロール定義をキャプチャするスクリプトを生成する必要があります。
SQL Server Data Tools からプロジェクトを再配置すると、プロジェクト内で定義されていないロールまたはロール メンバーシップはすべて上書きされます。再配置後にロールとロール メンバーシップを再構築するには、スクリプトを使うのが最も速い方法です。
SSMS で、[ロール] フォルダーに移動して、既存のロールを右クリックします。
[ロールをスクリプト化] | [CREATE | [ファイル] と選択します。
.xmla 拡張子を付けて、ファイルを保存します。スクリプトをテストするには、現在のロールを削除し、SSMS でファイルを開き、F5 キーを押してスクリプトを実行します。
次の手順
キューブ権限を調整して、セルまたはディメンション データへのアクセスを制限できます。詳細については、「ディメンション データへのカスタム アクセス権の付与 (Analysis Services)」および「セル データへのカスタム アクセス権の付与 (Analysis Services)」を参照してください。
関連項目
タスク
データ マイニング構造およびモデルにおける権限の付与 (Analysis Services)
データ ソース オブジェクトにおける権限の付与 (Analysis Services)