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.
Unterstützte Variablen
IAM-Policys für Containerinstanzen unterstützen alle allgemeinen Policy-Variablen. Siehe Allgemeine Variablen für alle Anforderungen.
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.
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 |
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 DeleteContainerInstance (erfordert auch |
Verben | Berechtigungen | Vollständig abgedeckte APIs | APIs teilweise abgedeckt |
---|---|---|---|
Prüfen |
COMPUTE_CONTAINER_INSPECT |
ListContainers |
GetContainerInstance (benötigt auch |
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 DeleteContainerInstance (benötigt auch |
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
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.
- 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>'}
-
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