ポリシー構文の概要

この項では、ポリシー・ステートメント全体の構文について説明します。

アプリケーション依存性管理リソースへのアクセスを制御するには、ユーザーを作成して適切なグループに配置する必要があります(ユーザーの管理およびグループの管理を参照)。その後、アクセス権を制御するポリシーおよびポリシー・ステートメントを作成できます(ポリシーの管理を参照)。動的グループは、定義したルールに一致するリソースを含む特別なタイプのグループです。詳細は、動的グループの管理を参照してください。

ポリシーによって、グループは、特定のコンパートメント内の特定のタイプのリソースを一定の方法で操作できます。

Allow <subject> to <verb> <resource-type> in <location> where <condition>

たとえば、次のように指定できます。

  • <subject>として、グループまたは動的グループの名前またはOCID。または、any-userを使用して、テナンシ内のすべてのユーザーを含めることができます。

  • <subject>に1つ以上の権限のアクセス権を付与するため、<verb> として、inspectreaduseおよびmanage

    inspect > read > use > manageにアクセスすると、アクセス権のレベルが増え、付与された権限は累積されます。たとえば、useには、readに加えて更新する権限が含まれます。

  • <resource-type>adm-familyなどのリソースのファミリ。または、adm-knowledge-basesadm-vulnerability-auditsなどのファミリ内の個々のリソースを指定できます。

  • <location>として、コンパートメントの名前またはOCID。または、tenancyを使用して、テナンシ全体を含めることができます。

  • <condition>に1つ以上の条件。アクセス権を付与するためには、これが満たされる必要があります。いくつかの条件では、anyまたはallを使用できます。

    1つの条件は1つ以上の変数で構成されます。変数は、リクエスト自体(request.operationなど)またはリクエストで処理されるリソース(target.compartment.idなど)に関連できます。グループが他のナレッジ・ベースではなく特定のナレッジ・ベースを管理できるようにするには、次のようにします。

    Allow group <group-name> to manage adm-knowledge-bases in compartment <compartment-name> where target.compartment.id = '<compartment-ocid>'

    または、ナレッジ・ベースの削除を除くすべてのApplication Dependency Managementリソースの管理をグループに許可するには:

    Allow group <group-name> to manage adm-family in compartment <compartment-name> where request.permission != 'ADM_KNOWLEDGE_BASE_DELETE'

詳細は、ポリシー構文を参照してください。ポリシーの作成の詳細は、ポリシーの仕組みおよびポリシー・リファレンスを参照してください。