IAM-Policys für Container Instances

In diesem Thema wird beschrieben, wie Sie Policys schreiben, um den Zugriff auf Oracle Cloud Infrastructure Container Instances zu kontrollieren.

Informationen zu IAM finden Sie unter Überblick über IAM.

Ressourcentypen

Individuelle Ressourcentypen

compute-container-instances

compute-containers

Aggregierter Ressourcentyp

compute-container-family

Kommentare

Eine Policy, die <verb> compute-container-family verwendet, entspricht dem Schreiben einer Policy mit einer separaten <verb> <individual resource-type>-Anweisung für die einzelnen individuellen Ressourcentypen.

Details zu Kombinationen aus Verb und Ressourcentyp

In den folgenden Tabellen sind die Berechtigungen und API-Vorgänge aufgeführt, die von den einzelnen Verben abgedeckt werden. Die Berechtigungen nehmen in dieser Reihenfolge zu: inspect > read > use > manage. Ein Pluszeichen (+) in einer Tabellenzelle gibt den inkrementellen Zugriff im Vergleich zur Zelle direkt darüber an, während "Keine zusätzlichen" keinen inkrementellen Zugriff angibt.

Beispiel: Die Verben read und use für den Ressourcentyp vcns decken keine zusätzlichen Berechtigungen oder API-Vorgänge als das Verb inspect ab. Das Verb manage umfasst jedoch mehrere zusätzliche Berechtigungen und API-Vorgänge.

Für Ressourcentypen der Familie "compute-container-family"

Die folgenden Tabellen enthalten die Berechtigungen und API-Vorgänge, die von jedem der individuellen Ressourcentypen in compute-container-family abgedeckt werden.

compute-container-instances
Verben Berechtigungen Vollständig abgedeckte APIs APIs teilweise abgedeckt
Prüfen

COMPUTE_CONTAINER_INSTANCE_INSPECT

ListContainerInstanceShapes

ListContainerInstances

ListWorkRequests

ListWorkRequestErrors

ListWorkRequestLogs

Keine

Lesen

PRÜFEN +

COMPUTE_CONTAINER_INSTANCE_READ

GetWorkRequest

GetContainerInstance (benötigt auch inspect compute-container)

verwenden

LESEN +

COMPUTE_CONTAINER_INSTANCE_UPDATE

COMPUTE_CONTAINER_INSTANCE_START

COMPUTE_CONTAINER_INSTANCE_STOP

COMPUTE_CONTAINER_INSTANCE_RESTART

UpdateContainerInstance

StartContainerInstance

StopContainerInstance

RestartContainerInstance

keine zusätzlichen

Verwalten

+ VERWENDEN

COMPUTE_CONTAINER_INSTANCE_CREATE

COMPUTE_CONTAINER_INSTANCE_DELETE

COMPUTE_CONTAINER_INSTANCE_MOVE

ChangeContainerInstanceCompartment

CreateContainerInstance (erfordert auch use vnics, use subnets und manage compute-container)

DeleteContainerInstance (erfordert auch use vnics, use subnets und manage compute-container)

compute-container
Verben Berechtigungen Vollständig abgedeckte APIs APIs teilweise abgedeckt
Prüfen

COMPUTE_CONTAINER_INSPECT

ListContainers

GetContainerInstance (benötigt auch read compute-container-instances)

Lesen

PRÜFEN +

COMPUTE_CONTAINER_READ

GetContainer

keine zusätzlichen

verwenden

LESEN +

COMPUTE_CONTAINER_UPDATE

COMPUTE_CONTAINER_LOG_RETRIEVE

UpdateContainer

RetrieveLogs

keine zusätzlichen

Verwalten

+ VERWENDEN

COMPUTE_CONTAINER_CREATE

COMPUTE_CONTAINER_DELETE

keine zusätzlichen

CreateContainerInstance (auch use vnics, use subnets und manage compute-container-instances erforderlich)

DeleteContainerInstance (benötigt auch use vnics, use subnets und manage compute-container-instances)

Für jeden API-Vorgang erforderliche Berechtigungen

In der folgenden Tabelle werden die API-Vorgänge nach Ressourcentyp gruppiert aufgeführt. Die Ressourcentypen werden in alphabetischer Reihenfolge aufgeführt.

Informationen zu Berechtigungen finden Sie unter Berechtigungen.

API-Vorgänge Für den Vorgang erforderliche Berechtigungen
GetContainer COMPUTE_CONTAINER_READ
ListContainers COMPUTE_CONTAINER_INSPECT
RetrieveLogs COMPUTE_CONTAINER_LOG_RETRIEVE
UpdateContainer COMPUTE_CONTAINER_UPDATE
CreateContainerInstance COMPUTE_CONTAINER_INSTANCE_CREATE, VNIC_CREATE und SUBNET_USE und COMPUTE_CONTAINER_CREATE
GetContainerInstance COMPUTE_CONTAINER_INSTANCE_READ und COMPUTE_CONTAINER_INSPECT
ListContainerInstances COMPUTE_CONTAINER_INSTANCE_INSPECT
ListContainerInstanceShapes COMPUTE_CONTAINER_INSTANCE_INSPECT
UpdateContainerInstance COMPUTE_CONTAINER_INSTANCE_UPDATE
StartContainerInstance COMPUTE_CONTAINER_INSTANCE_START
StopContainerInstance COMPUTE_CONTAINER_INSTANCE_STOP
RestartContainerInstance COMPUTE_CONTAINER_INSTANCE_RESTART
ChangeContainerInstanceCompartment COMPUTE_CONTAINER_INSTANCE_MOVE
DeleteContainerInstance COMPUTE_CONTAINER_INSTANCE_DELETE, VNIC_DELETE und SUBNET_USE und COMPUTE_CONTAINER_DELETE
GetWorkRequest COMPUTE_CONTAINER_INSTANCE_READ
ListWorkRequestLogs COMPUTE_CONTAINER_INSTANCE_INSPECT
ListWorkRequestErrors COMPUTE_CONTAINER_INSTANCE_INSPECT
ListWorkRequests COMPUTE_CONTAINER_INSTANCE_INSPECT

Policy-Beispiele

Verwenden Sie das folgende Beispiel, um Policys für den Mandanten zu erstellen.
Hinweis

Mit den folgenden Beispielen wird Ihr Mandant schnell eingerichtet. Weitere Informationen zur Anpassung der Policys für Ihren Mandanten finden Sie unter Erweiterte Features von IAM-Policys.

Erstellen von Containerinstanzen durch Benutzer zulassen

Zugriffstyp: Ermöglichen Sie Benutzern, Containerinstanzen im Compartment <container-instance-compartment-name> zu erstellen und Subnetze im Compartment <subnet-compartment-name> zu verwenden.

Wo wird die Policy erstellt: Am einfachsten ist es, diese Policy im Mandanten zu erstellen. Wenn die Admins der einzelnen Compartments die Kontrolle über die einzelnen Policy-Anweisungen ihrer Compartments haben sollen, finden Sie weitere Informationen hierzu finden Sie unter Policy-Zuordnung.

Allow group ContainerInstanceLaunchers to manage compute-container-family in compartment <container-instance-compartment-name>
Allow group ContainerInstanceLaunchers to use virtual-network-family in compartment <subnet-compartment-name>
Allow group ContainerInstanceLaunchers to read repos in tenancy

Informationen dazu, wie Benutzer neue Cloud-Netzwerke und Subnetze erstellen können, finden Sie unter Verwalten eines Cloud-Netzwerks zulassen.

Containerinstanzen können Images aus Container Registry abrufen

Zugriffstyp: Ermöglicht dem Container Instances-Service das Lesen von Images aus privaten Container Registry-Repositorys.

Wo wird die Policy erstellt: Am einfachsten ist es, diese Policy im Mandanten zu erstellen.

  1. Erstellen Sie eine dynamische Gruppe mit Containerinstanzen als Ressourcentyp. Fügen Sie eine Regel mit der folgenden Syntax hinzu:
    ALL {resource.type='computecontainerinstance', resource.compartment.id = '<container-instance-compartment-ocid>'}
  2. Um Zugriff für die dynamische Gruppe zu erteilen, schreiben Sie die folgende Policy:

    Allow dynamic-group ContainerInstanceDynamicGroup to read repos in compartment <container-registry-repo-compartment-name>

Containerimage mit der Konsole auswählen

Zugriffstyp: Wenn Sie Ihre Containerinstanz in der Konsole erstellen, können Sie das Containerimage auswählen. Um die korrekte Adresse des Containerimages zu generieren, müssen Sie diese Policy hinzufügen, um Object Storage-Namespaces zu lesen.

Wo wird die Policy erstellt: Am einfachsten ist es, diese Policy im Mandanten zu erstellen.

Allow group ContainerInstanceLaunchers to read objectstorage-namespaces in tenancy

Erweiterte Features von IAM-Policys

Informationen zu erweiterten Features von IAM-Policys oder zum Zurückskalieren von Container Registry-Policys finden Sie unter: