権限とアクセス権 (Analysis Services - 多次元データ)
MicrosoftAnalysis Services では、管理者はロールを使用することにより、Analysis Services データベースのオブジェクトのセキュリティ レベルを Windows ユーザーおよびグループごとに定義できます。各オブジェクトにはロールあたり 1 つの権限を関連付けることができ、各権限には 1 つまたは複数のアクセス権を関連付けることができます。さらに、Windows のユーザーまたはグループには、複数の Analysis Services ロールを関連付けることができます。これによって、ビジネス インテリジェンス アプリケーションの複雑なセキュリティ モデルに合わせて、権限やアクセス権を組み合わせることができます。
アクセス権
次の表で、Analysis Services データベースのオブジェクトに関連付けられた権限に対して指定できるアクセス権について説明します。
アクセス権 |
説明 |
---|---|
Access |
オブジェクトのメタデータにアクセスできるようにします。次の種類のアクセスがサポートされています。
|
Administer |
ロールのメンバがオブジェクトを管理できるかどうかを示します。 Administer 権限は、オブジェクトに含まれているすべてのオブジェクトに対する完全なアクセス権をロールのメンバに与えます。 |
AllowBrowsing |
ロールのメンバがマイニング モデルのデータを参照できるようにします。 |
AllowDrillthrough |
マイニング モデルから基になるデータにドリルスルーする権限をロールのメンバに与えます。 |
AllowedSet |
AllowedSet 権限は、ロールのメンバが表示できる属性のメンバを定義します。たとえば、[Customer].[CountryRegion] で許可されているセットが {Canada} である場合、ロールのメンバは Canada のすべての郡および市にアクセスできます。 親子階層の場合、許可されるメンバは、セットで定義されているメンバと、そのメンバと共に存在する親子階層内の先祖を加えたものになります。親子階層のメンバが許可されるセットに含まれていない場合、そのメンバの子 (データ メンバ以外) はロールにアクセスできません。ただし、データ メンバは、ディメンションのキー属性に属しているのでアクセスできます。 AllowedSet 権限にセットが定義されていない場合、既定のセットには属性のすべてのメンバが含まれます。 |
AllowPredict |
マイニング モデルの予測権限は、マイニング モデルに基づいて予測する権限をロールのメンバに与えます。 |
ApplyDenied |
他の明示的に拒否されているメンバと共に存在するこの属性のメンバの表示を拒否するかどうかを決定します。 |
DefaultMember |
DefaultMember 権限は、ディメンションの既定のメンバを定義します。既定のメンバは、ディメンションを含むキューブに対するクエリによって返されるデータセットに影響を与えます。ディメンションが軸の上に表示されないとき、既定では、既定のメンバを使用してデータセットがフィルタ選択、つまりスライスされます。 |
DeniedSet |
DeniedSet 権限は、ロールのメンバが表示できない属性のメンバを定義します。 |
IsAllowed |
属性に基づいたレベルの設定にかかわらず、属性のメンバへのアクセスが許可されるかどうかを決定します。 ディメンションの粒度属性に対して IsAllowed プロパティが False に設定されている場合、ディメンション属性に VisualTotals を設定すると、そのすべてのメンバが NULL 値になります。単項演算子では、VisualTotals が False に設定されている場合、各メンバはそのすべての子のロールアップになります。VisualTotals が True に設定されている場合、各メンバは許可されている子のロールアップになります。 このプロパティ設定の既定値は True です。 |
Process |
オブジェクトの Process 権限は、オブジェクトを処理する権限をロールのメンバに与えます。また、オブジェクト内のすべての子オブジェクトを処理する権限も付与されます。ただし、子オブジェクトに対してこの権限が明示的に拒否されている場合を除きます。Process 権限は、オブジェクトのデータまたはメタデータへのアクセス権をロールのメンバに与えるものではありません。 |
ReadDefinition |
権限オブジェクトを定義するメタデータをロールのメンバが読み取ることができるかどうかを示します。このプロパティ設定は、オブジェクトに含まれているオブジェクトによって継承されます。 |
VisualTotals |
ディメンション データの VisualTotals 権限は、属性に対するデータの集計方法を定義します。これは、True または False を返す MDX 式です。VisualTotals が False である場合、ロールのメンバに表示されるかどうかにかかわらず、データはディメンションの属性のすべてのメンバに対して集計されます。VisualTotals が True である場合、データはロールに読み取りアクセス権のあるディメンションの粒度属性のメンバに対してのみ集計されます。たとえば、Customer Name が粒度属性であり、VisualTotals が City 属性に対して True に設定されている場合、各市はロールに読み取りアクセス権のある顧客のデータの集計になります。 既定値は False です。 |
権限
次の表で、Analysis Services データベースで使用できる権限と、各権限によって管理されるアクセス権について説明します。
権限 |
アクセス権 |
データベース |
データベース アクセスは、Analysis Services データベース内のオブジェクトおよびデータへのアクセスを定義します。 使用できるアクセス権は次のとおりです。
|
データ ソース |
データ ソース アクセスは、Analysis Services データベース内のデータ ソースへのアクセスを定義します。 使用できるアクセス権は次のとおりです。
|
キューブ |
データベース ロールがキューブに割り当てられたときにキューブ レベルで作成されます。キューブ ロールはそのキューブだけに適用されます。キューブ ロールの既定値は同名のデータベース ロールから派生されますが、一部の既定値はキューブ ロールで無効にできます。キューブ ロールには、セル セキュリティなど、データベース ロールにはない追加オプションがあります。 一部のキューブに対する読み取りアクセスおよび読み取り/書き込みアクセス権の許可は、非常に柔軟に行うことができます。どのディメンション メンバとキューブ セルをロールにおいて表示および更新できるかを指定できます。詳細については、「ディメンションのセキュリティとセルのセキュリティ」を参照してください。 使用できるアクセス権は次のとおりです。
|
セル |
セル データ アクセスは、キューブ内のセルへのアクセスを定義します。キューブ内のセルへのアクセスには次の 3 種類があります。
キューブ内のセルのセキュリティは、各キューブ セルに対して True または False に解決される MDX 式を使用して、セル アクセスの種類ごとに定義されます。数値式に含まれているゼロ以外の値は True として評価され、ゼロは False として評価されます。アクセスは、式が False に解決された場合に許可され、True に解決された場合に拒否されます。 使用できるアクセス権は次のとおりです。
|
ディメンション |
ディメンション アクセス プロパティは、キューブにディメンションが含まれているかどうかにかかわらず、データベース内のデータベース ディメンションへのアクセスを定義します。ディメンション アクセスにより、ロールのメンバであるユーザーは、クライアント アプリケーション内のディメンションを参照できるようになります。キューブ ディメンション権限を指定して、ディメンションが特定のキューブ内でアクセスされるときに、ロールのデータベース アクセス権を上書きすることもできます。 使用できるアクセス権は次のとおりです。
|
属性 |
ディメンション データ アクセスは、ロールのメンバがアクセスできるディメンション属性を制御します。属性へのアクセスを許可または拒否することによって、その属性に基づいたディメンション階層内のレベルへのアクセスが定義されます。ロールによる属性へのアクセスが拒否されている場合は、属性から派生したすべてのレベルへのアクセスも拒否されます。 属性へのアクセスを拒否することで階層に穴ができた場合は、階層全体が無効になり、ロールのメンバにはアクセスできなくなります。たとえば、CountryRegion-State-City-Name という階層では、State と Name のレベルは階層内で連続していません。このため、City 属性へのアクセスを拒否すると、階層内に穴ができて、階層が無効になります。一方、CountryRegion 属性へのアクセスを拒否しても穴はできず、レベルが連続している State-City-Name 階層は有効になります。同様に、Name 属性へのアクセスを拒否した場合も、有効な CountryRegion-State-City 階層が保持されます。 属性へのアクセスをロールのメンバに許可する場合は、属性の一部のメンバのみに対してアクセスを許可または拒否できます。 使用できるアクセス権は次のとおりです。
|
マイニング構造 |
マイニング構造アクセスは、マイニング構造およびマイニング モデルとそのデータへの権限を決定します。 使用できるアクセス権は次のとおりです。
|
マイニング モデル |
マイニング構造アクセスは、マイニング構造およびマイニング モデルとそのデータへの権限を決定します。 使用できるアクセス権は次のとおりです。
|
1DefaultMember アクセス権は、ディメンションの既定のメンバを定義します。詳細については、「既定メンバの定義」を参照してください。
権限と継承
オブジェクトに他のオブジェクト (データベース内のキューブやディメンションなど) が含まれている場合は、親オブジェクトの Administer、Process、および ReadDefinition 権限が子オブジェクトによって継承されます。
権限 |
継承 |
---|---|
Administer |
Analysis Services サーバー ロールのメンバにはサーバーを管理する権限があるので、サーバー上のすべてのオブジェクトに対するフル アクセス権もあります。データベースの管理権限が付与されている Analysis Services データベース ロールのメンバには、データベース内のすべてのオブジェクトに対するフル アクセス権があります。 |
Process |
既定では、オブジェクトの Process 設定はすべての子オブジェクトに適用されます。このプロパティを子オブジェクトに設定して、親オブジェクトから継承される権限を上書きすることもできます。
|
ReadDefinition |
既定では、オブジェクトの ReadDefinition プロパティ設定は子オブジェクトで継承されます。このプロパティを子オブジェクトに設定して、親オブジェクトから継承される権限を上書きすることもできます。 |
複数のロールと権限
ユーザーは Analysis Services データベースの複数のロールに属することができます。複数のロールのそれぞれの権限は、加算的に適用されます。つまり、1 つのロールでオブジェクトへのアクセスが許可されている場合、そのロールのメンバは別のロールでこのオブジェクトへのアクセスを明示的に拒否されているかどうかに関係なく、このオブジェクトにアクセスできます。