Queue-Policys
Mit dem Oracle Cloud Infrastructure Identity and Access Management-(IAM-)Service können Sie Policys für Ihre Queues erstellen.
In diesem Thema werden Details zum Schreiben von Policys für die Kontrolle des Zugriffs auf den Queue-Service beschrieben.
Überblick über die Policy-Syntax
Die allgemeine Syntax einer Policy-Anweisung lautet:
allow <subject> to <verb> <resource-type> in <location> where <condition>
Beispiel: Sie können Folgendes angeben:
-
Eine Gruppe oder dynamische Gruppe nach Name oder OCID als
<subject>
. Sie können auchany-user
verwenden, um alle Benutzer im Mandanten abzudecken. -
inspect
,read
,use
undmanage
als<verb>
, um<subject>
Zugriff auf Berechtigungen zu erteilen.Die Zugriffsebene erhöht sich im Allgemeinen in der Reihenfolge der Verben
inspect
>read
>use
>manage
, und die erteilten Berechtigungen sind kumulativ. Beispiel:use
umfasstread
sowie die Möglichkeit zum Aktualisieren. -
Eine Ressourcenfamilie wie
virtual-network-family
alsresource-type
. Sie können auch eine einzelne Ressource in einer Familie angeben, wievcns
undsubnets
. -
Ein Compartment nach Name oder OCID als
<location>
. Sie können auchtenancy
verwenden, um den gesamten Mandanten abzudecken. -
Eine oder mehrere Bedingungen in
<condition>
, die erfüllt sein müssen, damit der Zugriff erteilt wird. Bei mehreren Bedingungen können Sieany
oderall
verwenden.Eine Bedingung besteht aus mindestens einer Variablen. Eine Variable kann für die Anforderung selbst (z.B.
request.operation
) oder für die Ressource relevant sein, die in der Anforderung bearbeitet wird (z.B.target.queue.id
). So berechtigen Sie eine Gruppe zum Verwalten eines bestimmten Workspace und keines anderen Workspace:allow group <group-name> to manage queues in compartment <compartment-name> where target.queue.id = '<queue-ocid>'
Oder so erteilen Sie einer Gruppe die Berechtigung zum Verwalten aller Queue-Ressourcen im Mandanten:
allow group <group-name> to manage queues in tenancy
Weitere Informationen zum Erstellen von Policys finden Sie unter Erste Schritte mit Policys und in der Policy-Referenz.
Ressourcentypen
Um Benutzern Zugriff auf Queue-Ressourcen zu erteilen, erstellen Sie IAM-Policys mit Queue-Ressourcentypen.
Verwenden Sie für den Zugriff auf alle Queue-Ressourcen den Ressourcentyp queues
.
Wenn Sie Benutzern keine Berechtigungen zum Verwalten von Queues, sondern nur zum Produzieren in einer Queue oder zum Konsumieren aus einer Queue erteilen möchten, verwenden Sie die folgenden individuellen Ressourcentypen:
queue-push
queue-pull
Weitere Informationen finden Sie unter Policy-Beispiele.
Unterstützte Variablen
Der Queue-Service unterstützt alle allgemeinen plus die hier aufgelisteten Variablen.
Weitere Informationen zu allgemeinen Variablen, die von OCI-Services unterstützt werden, finden Sie unter Allgemeine Variablen für alle Anforderungen.
Variable | Variablentyp | Quelle |
---|---|---|
target.queue.id |
Entity (OCID) | Anforderung |
target.queue.name |
String | Anforderung |
Details zu Kombinationen aus Verben und Ressourcentypen
Für das Erstellen einer Policy stehen in Oracle Cloud Infrastructure verschiedene Verben und Ressourcentypen zur Verfügung.
In den folgenden Tabellen werden die Berechtigungen und API-Vorgänge angezeigt, die von jedem Verb für Queue abgedeckt werden. Die Zugriffsebene ist kumulativ von inspect
zu read
zu use
zu 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.
Verben | Berechtigungen | Vollständig abgedeckte APIs | Teilweise abgedeckte APIs |
---|---|---|---|
inspect |
QUEUE_INSPECT |
|
keine |
read |
INSPECT + QUEUE_READ |
INSPECT +
|
keine |
use |
READ + QUEUE_UPDATE QUEUE_PRODUCE QUEUE_CONSUME |
READ +
|
keine |
manage |
USE + QUEUE_CREATE QUEUE_DELETE QUEUE_MOVE |
USE +
|
keine |
Verben | Berechtigungen | Vollständig abgedeckte APIs | Teilweise abgedeckte APIs |
---|---|---|---|
inspect |
keine |
keine |
keine |
read |
keine |
keine |
keine |
use |
QUEUE_PRODUCE |
|
keine |
manage |
keine |
keine |
keine |
Verben | Berechtigungen | Vollständig abgedeckte APIs | Teilweise abgedeckte APIs |
---|---|---|---|
inspect |
keine |
keine |
keine |
read |
keine |
keine |
keine |
use |
QUEUE_CONSUME |
|
keine |
manage |
keine |
keine |
keine |
Für jeden API-Vorgang erforderliche Berechtigungen
In der folgenden Tabelle werden die API-Vorgänge für Queue in logischer Reihenfolge nach Ressourcentyp gruppiert aufgeführt.
Die Ressourcentypen sind queues
, queue-push
und queue-pull
.
Informationen zu Berechtigungen finden Sie unter Berechtigungen.
API-Vorgang | Für den Vorgang erforderliche Berechtigungen |
---|---|
ListQueues |
QUEUE_INSPECT |
CreateQueue |
QUEUE_CREATE |
GetQueue |
QUEUE_READ |
DeleteQueue |
QUEUE_DELETE |
MoveQueue |
QUEUE_MOVE |
UpdateQueue |
QUEUE_UPDATE |
ListWorkRequests |
QUEUE_INSPECT |
GetWorkRequest |
QUEUE_READ |
ListWorkRequestErrors |
QUEUE_INSPECT |
ListWorkRequestLogs |
QUEUE_INSPECT |
GetStats |
QUEUE_READ |
ListChannels |
QUEUE_READ |
PutMessages |
QUEUE_PRODUCE |
GetMessages |
QUEUE_CONSUME |
UpdateMessage |
QUEUE_CONSUME |
DeleteMessage |
QUEUE_CONSUME |
Policy-Beispiele
Erfahren Sie anhand von Beispielen mehr zu IAM-Policys für Queue.
Für Administratoren: Mit der folgenden Policy werden der angegebenen Gruppe die Berechtigungen für alle Aktionen mit Queues und den zugehörigen Queue-Serviceressourcen erteilt:
Allow QueueManagers to manage queues in compartment <compartment_name>
Verwenden Sie die folgenden Policys, um einer angegebenen Gruppe die Berechtigung zum Produzieren in oder zum Konsumieren aus einer Queue zu erteilen:
Allow QueueProducers to use queue-push in compartment <compartment_name>
Allow QueueConsumers to use queue-pull in compartment <compartment_name>
Verwenden Sie die folgende Policy, um einer angegebenen Gruppe die Berechtigung zum Prüfen und Lesen von Queuedetails zu erteilen:
Allow QueueReaders to read queues in compartment <compartment_name>