ポリシー構文の概要
この項では、ポリシー・ステートメント全体の構文について説明します。
アプリケーション依存性管理リソースへのアクセスを制御するには、ユーザーを作成して適切なグループに配置する必要があります(ユーザーの管理およびグループの管理を参照)。その後、アクセス権を制御するポリシーおよびポリシー・ステートメントを作成できます(ポリシーの管理を参照)。動的グループは、定義したルールに一致するリソースを含む特別なタイプのグループです。詳細は、動的グループの管理を参照してください。
ポリシーによって、グループは、特定のコンパートメント内の特定のタイプのリソースを一定の方法で操作できます。
Allow <subject> to <verb> <resource-type> in <location> where <condition>
たとえば、次のように指定できます。
-
<subject>
として、グループまたは動的グループの名前またはOCID。または、any-user
を使用して、テナンシ内のすべてのユーザーを含めることができます。 -
<subject>
に1つ以上の権限のアクセス権を付与するため、<verb>
として、inspect
、read
、use
およびmanage
。inspect
>read
>use
>manage
にアクセスすると、アクセス権のレベルが増え、付与された権限は累積されます。たとえば、use
には、read
に加えて更新する権限が含まれます。 -
<resource-type>
のadm-family
などのリソースのファミリ。または、adm-knowledge-bases
やadm-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'
詳細は、ポリシー構文を参照してください。ポリシーの作成の詳細は、ポリシーの仕組みおよびポリシー・リファレンスを参照してください。