セキュリティ ロール (Analysis Services - 多次元データ)

適用対象: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

ロールは、SQL Server Analysis Services オブジェクトとデータのセキュリティを管理するために Microsoft SQL Server SQL Server Analysis Servicesで使用されます。 基本的な用語では、ロールは、Microsoft Windows ユーザーのセキュリティ識別子 (SID) と、SQL Server Analysis Servicesのインスタンスによって管理されるオブジェクトに対して定義された特定のアクセス権とアクセス許可を持つグループを関連付けます。 SQL Server Analysis Servicesには、次の 2 種類のロールが用意されています。

  • サーバー ロール。SQL Server Analysis Servicesのインスタンスへの管理者アクセスを提供する固定ロールです。

  • データベース ロール。管理者以外のユーザーによるオブジェクトやデータへのアクセスを制御するために、管理者によって定義されるロールです。

Microsoft SQL Server SQL Server Analysis Services セキュリティのセキュリティは、ロールとアクセス許可を使用して管理されます。 ロールはユーザーのグループです。 ユーザー (メンバーとも呼ばれる) はロールに追加したり、ロールから削除したりできます。 オブジェクトに対する権限はロールによって指定されます。ロールのすべてのメンバーは、そのロールが権限を持つオブジェクトを使用できます。 ロールのすべてのメンバーは、オブジェクトに対して等しい権限を持ちます。 権限はオブジェクトに対して適用されます。 各オブジェクトは、そのオブジェクトに対して許可された権限のコレクションを持ちます。複数の異なる権限セットを 1 つのオブジェクトに付与できます。 オブジェクトの権限コレクションに含まれる各権限には、1 つのロールが割り当てられています。

Role オブジェクトと Role Member オブジェクト

ロールは、ユーザー (メンバー) のコレクションを格納するオブジェクトです。 ロール定義は、SQL Server Analysis Servicesのユーザーのメンバーシップを確立します。 権限はロールに基づいて割り当てられます。したがって、ユーザーがオブジェクトにアクセスするためには、いずれかのロールのメンバーになる必要があります。

Role オブジェクトは、Name、ID、および Members の各パラメーターで構成されます。 Members は文字列のコレクションです。 各メンバーには "domain\username" という形式のユーザー名が含まれます。 Name はロールの名前を表す文字列です。 ID はロールの一意な識別子を表す文字列です。

サーバー ロール

SQL Server Analysis Services サーバー ロールは、windows ユーザーとグループのSQL Server Analysis Servicesのインスタンスへの管理アクセスを定義します。 このロールのメンバーは、SQL Server Analysis Servicesのインスタンス上のすべてのSQL Server Analysis Servicesデータベースとオブジェクトにアクセスでき、次のタスクを実行できます。

  • データベースの作成やサーバー レベルのプロパティの設定など、SQL Server Management StudioまたはSQL Server Data Toolsを使用してサーバー レベルの管理機能を実行します。

  • 分析管理オブジェクト (AMO) を使用して、プログラムで管理機能を実行する。

  • SQL Server Analysis Servicesデータベース ロールを維持します。

  • トレースを開始する (プロセス アクセス権を持つデータベース ロールによって実行可能な処理イベントを除く)。

SQL Server Analysis Servicesのすべてのインスタンスには、そのインスタンスを管理できるユーザーを定義するサーバー ロールがあります。 このロールの名前と ID は Administrators で、データベース ロールとは異なり、サーバー ロールは削除できず、権限を追加または削除することもできません。 つまり、ユーザーは、SQL Server Analysis Servicesのインスタンスのサーバー ロールに含まれているかどうかに応じて、SQL Server Analysis Servicesのインスタンスの管理者であるか、または管理者ではありません。

データベース ロール

SQL Server Analysis Services データベース ロールは、SQL Server Analysis Services データベース内のオブジェクトとデータへのユーザー アクセスを定義します。 データベース ロールは、SQL Server Analysis Services データベース内に個別のオブジェクトとして作成され、そのロールが作成されたデータベースにのみ適用されます。 Windows ユーザーおよびグループは、管理者によってこのロールに含まれています。管理者は、このロール内の権限も定義します。

ロールの権限は、メンバーがデータベース内のオブジェクトとデータだけでなく、データベース自体にアクセスして管理できるようにするものです。 各権限には 1 つまたは複数のアクセス権が関連付けられており、アクセス権によってデータベース内の特定のオブジェクトへのアクセスをさらに詳細に制御できるようになっています。

Permission オブジェクト

権限は、各ロールについて、オブジェクト (キューブやディメンションなど) に関連付けられます。 権限は、ロールのメンバーがオブジェクトに対して実行できる操作を指定します。

Permission クラスは抽象クラスです。 そのため、対応するオブジェクトに権限を定義するには、派生クラスを使用する必要があります。 オブジェクトごとに権限の派生クラスが定義されます。

Object クラス
Database DatabasePermission
DataSource DataSourcePermission
Dimension DimensionPermission
Cube CubePermission
MiningStructure MiningStructurePermission
MiningModel MiningModelPermission

権限によって使用可能となるアクションを以下の一覧に示します。

アクション 説明
Process {true, false}

Default=false
trueを指定した場合、メンバーはこのオブジェクトと、このオブジェクトに含まれる任意のオブジェクトを処理できます。

Process 権限はマイニング モデルには適用されません。 MiningModel 権限は常に MiningStructure から継承されます。
ReadDefinition {None, Basic, Allowed}

Default=None
オブジェクトに関連付けられたデータ定義 (ASSL) をメンバーが読み取れるかどうかを指定します。

Allowedを指定した場合、メンバーはオブジェクトに関連付けられた ASSL を読み取ることができます。

Basic および Allowed は、オブジェクトに含まれるオブジェクトによって継承されます。 AllowedBasic および Noneをオーバーライドします。

オブジェクトで DISCOVER_XML_METADATA を使用する場合、Allowed を指定する必要があります。 リンク オブジェクトとローカル キューブを作成する場合、Basic を指定する必要があります。
Read {None, Allowed}

既定値 =None (DimensionPermission の場合は、既定値 =Allowed)
スキーマ行セットおよびデータ コンテンツへの読み取りアクセスがメンバーにあるかどうかを指定します。

Allowed を指定した場合は、データベースへの読み取りアクセスが許可され、データベースを検出できるようになります。

キューブで許可すると、スキーマ行セットの読み取りアクセスとキューブ コンテンツへのアクセスが可能になります (および CubeDimensionPermissionによってCellPermission制約されている場合を除く)。

ディメンションで許可されると、ディメンション内のすべての属性に対する読み取りアクセス許可が付与されます (によってCubeDimensionPermission制約されている場合を除く)。 Read (読み取り) 権限は、CubeDimensionPermission の静的継承でのみ使用されます。 ディメンションに対してNone を指定した場合は、ディメンションが非表示になり、集計可能な属性への既定のメンバーのアクセスのみが許可されます。ディメンションに集計不能な属性が含まれる場合はエラーが発生します。

では、MiningModelPermissionスキーマ行セット内のオブジェクトを表示し、予測結合を実行するためのアクセス許可が許可されます。

注データベース内の任意のオブジェクトの読み取りまたは書き込みを行うには、Allowed が必要です。
Write {None, Allowed}

Default=None
親オブジェクトのデータへの書き込みアクセスがメンバーにあるかどうかを指定します。

DimensionCube、および MiningModel の各サブクラスにアクセスが適用されます。 データベースの MiningStructure サブクラスには適用されません。検証エラーが発生します。

ではDimension ディメンション内のすべての属性に対する書き込みアクセス許可が許可されます。

ではCube Type=writeback として定義されたパーティションに対するキューブのセルに対する書き込みアクセス許可が付与されます。

モデル コンテンツをMiningModel変更するアクセス許可を許可する に対して許可されます

MiningStructure許可されるには、SQL Server Analysis Servicesで特定の意味はありません。

注: 読み取りも許可に設定されていない限り、書き込みは許可に設定できません
管理

注: データベースのアクセス許可でのみ
{true, false}

Default=false
メンバーがデータベースを管理できるかどうかを指定します。

true を指定した場合は、データベース内のすべてのオブジェクトへのアクセスが許可されます。

メンバーは特定のデータベースに対してのみ管理権限を持つことができます。他のデータベースを管理することはできません。

参照

権限とアクセス権 (Analysis Services - 多次元データ)
オブジェクトと操作へのアクセスの承認 (Analysis Services)