権限の付与と継承

Publisherには、様々な機能にアクセスするためのアプリケーション固有の権限が用意されています。

Publisherの権限は通常、アプリケーション・ロールのメンバーになることにより付与されます。権限は、2つの方法で付与されます。アプリケーション・ロールでメンバーシップを通じて付与する方法(直接的な付与)と、グループやロールの継承を通じて付与する方法(間接的な付与)です。アプリケーション・ロールのメンバーシップは、アプリケーション・ロール階層の特性によって継承されることができます。デフォルトのセキュリティ構成では、各アプリケーション・ロールは、事前定義済の一連の権限を付与するようにあらかじめ構成されています。グループは、アプリケーション・ロールにマップされます。グループとロールのマッピングにより、ロールの権限がグループのすべてのメンバーに伝達されます。つまり、権限はPublisherで次の関係を確立することにより付与されます。

  • グループによって、同様のシステム・アクセス要件を持つユーザーの組が定義されます。ユーザーは、必要なアクセスのレベルに応じ、1つ以上のグループのメンバーとして追加されます。

  • アプリケーション・ロールは、ユーザーがPublisherを使用するときに一般的に実行するロールを示すように定義されます。デフォルトのセキュリティ構成では、事前構成済のアプリケーション・ロールとして、BIServiceAdministrator (管理者)、BIContentAuthor (コンテンツの作成者)およびBIConsumer (コンテンツのコンシューマ)が用意されています。

  • ユーザーのグループは、それらのユーザーが必要とするアクセスの種類に応じて1つ以上のアプリケーション・ロールにマップされます。

  • アプリケーション・ポリシーが作成されると、ロール・タイプに対応する一連のアクセス権を付与するPublisherの権限がマップされます。

  • アプリケーション・ロールは、ロール・タイプ(管理者、作成者、コンシューマ)で必要とされる権限のセットを付与するアプリケーション・ポリシーにマップされます。

  • グループ・メンバーシップは、グループ階層の性質によって継承できます。継承されるグループにマップされるアプリケーション・ロールも継承され、それらの権限は同様にメンバーに伝達されます。

ユーザーの権限は、システムによって次のように決定されます。

  1. ユーザーは、ログイン時にWebブラウザに資格証明を入力します。ユーザー資格証明は、認証プロバイダにより、アイデンティティ・ストア内のデータと照合して認証されます。

  2. 認証に成功したら、Javaサブジェクトとプリンシパルの組合せが発行され、ユーザー名とユーザーのグループが入力されます。

  3. ユーザー・グループのリストが作成され、アプリケーション・ロールと照合してチェックされます。各ユーザー・グループにマップされたアプリケーション・ロールのリストが作成されます。

  4. 付与されるユーザー権限は、ユーザーがどのアプリケーション・ロールのメンバーであるかを把握することによって決定されます。グループのリストは、ユーザーがどのロールを持っているかを判断するためだけに生成され、他の目的には使用されません。

ユーザーは、他のアプリケーション・ロールを継承する場合にも、権限を付与されます。アプリケーション・ロールのメンバーには、他のグループやアプリケーション・ロールも含まれます。そして、結果的には、権限が明示的に付与されるほかに継承もされる、階層ロール構造となります。この階層では、そのアプリケーション・ロールがメンバーとして属しているロールの権限、およびそのアプリケーション・ロールの子孫であるすべてのロールにより付与される権限がグループに付与されることになります。

たとえば、デフォルトのセキュリティ構成には、いくつかのグループとアプリケーション・ロールが事前定義されています。デフォルトのBIServiceAdministratorアプリケーション・ロールにはBIAdministratorsグループ、BIContentAuthorアプリケーション・ロールにはBIAuthorsグループ、およびBIConsumerアプリケーション・ロールにはBIConsumersグループが含まれています。デフォルトのBIServiceAdministratorアプリケーション・ロールはBIContentAuthorアプリケーション・ロールのメンバーであり、BIContentAuthorアプリケーション・ロールはBIConsumerアプリケーション・ロールのメンバーです。これらのアプリケーション・ロールのメンバーは、次のように権限を継承します。BIAdministratorsグループのメンバーには、BIServiceAdministratorロール、BIContentAuthorロールおよびBIConsumerロールのすべての権限が付与されます。このロール階層の特性に基づき、特定のグループのメンバーであるユーザーには、権限が明示的に付与されるほか、継承を通じて付与されます。デフォルトのアプリケーション・ロールとグループの詳細は、「デフォルトのアプリケーション・ロールと権限」を参照してください

ノート:

アプリケーションによって管理されるリソースにアクセスするための権限は、グループやグループ階層自体により有効化されるわけではありません。権限は権限の付与により伝達され、アプリケーション・ポリシーで定義されます。ユーザー、グループまたはアプリケーション・ロールは、アプリケーション・ポリシーの権限受領者となります。アプリケーション・ポリシーの権限受領者により権限が伝達されますが、これは、直接のアソシエーション(ユーザー)によって、または権限受領者(グループまたはアプリケーション・ロール)のメンバーになることによって実行されます。

次の図は、デフォルトのグループとアプリケーション・ロールの関係を示しています。

次の表は、前の例や図で示した権限がどのようにして明示的に付与され、継承されるかをまとめたものです。

ユーザー名 グループ・メンバーシップ: 明示的/継承 アプリケーション・ロールのメンバーシップ: 明示的/継承 権限付与: 明示的/継承

User1、User2、User3

BIConsumers: 明示

BIConsumer: 明示

権限A: 明示

User4、User5

BIAuthors: 明示BIConsumers: 継承

BIContentAuthor: 明示、BIConsumer: 継承

権限B: 明示権限A: 継承

User6、User7

BIAdministrators: 明示BIAuthors: 継承BIConsumers: 継承

BIServiceAdministrator: 明示、BIContentAuthor: 継承、BIConsumer: 継承

権限C: 明示権限B: 継承権限A: 継承