Politiques de file d'attente
Utilisez le service de gestion des identités et des accès (GIA) pour Oracle Cloud Infrastructure pour créer des politiques pour vos files d'attente.
Cette rubrique présente des informations détaillées sur l'écriture de politiques pour contrôler l'accès au service de file d'attente.
Aperçu de la syntaxe d'une politique
La syntaxe globale d'un énoncé de politique est la suivante :
allow <subject> to <verb> <resource-type> in <location> where <condition>
Par exemple, vous pouvez spécifier :
-
Un groupe ou un groupe dynamique par nom ou OCID comme
<subject>
. Vous pouvez également utiliserany-user
pour couvrir tous les utilisateurs de la location. -
inspect
,read
,use
etmanage
comme<verb>
pour accorder à<subject>
l'accès à une ou plusieurs autorisations.inspect
>read
>use
>manage
représentent des niveaux d'accès croissants et les autorisations octroyées sont cumulatives. Par exemple,use
inclutread
et la possibilité de mettre à jour. -
Une famille de ressources comme
virtual-network-family
pourresource-type
. Vous pouvez également spécifier une ressource individuelle d'une famille telle quevcns
etsubnets
. -
Un compartiment par nom ou OCID comme
<location>
. Vous pouvez également utilisertenancy
pour couvrir l'ensemble de la location. -
Une ou plusieurs conditions dans
<condition>
, qui doivent être remplies pour que l'accès soit accordé. Pour plusieurs conditions, vous pouvez utiliserany
ouall
.Une condition est constituée d'une ou plusieurs variables. Une variable peut être pertinente pour la demande elle-même (par exemple,
request.operation
) ou pour la ressource faisant l'objet d'une action dans la demande (par exemple,target.queue.id
). Par exemple, pour permettre à un groupe de gérer un espace de travail particulier et aucun autre espace de travail :allow group <group-name> to manage queues in compartment <compartment-name> where target.queue.id = '<queue-ocid>'
Ou, pour permettre à un groupe de gérer toutes les ressources du service de file d'attente de la location :
allow group <group-name> to manage queues in tenancy
Pour plus d'informations sur la création de politiques, voir Introduction aux politiques et Informations de référence sur les politiques.
Types de ressource
Pour donner aux utilisateurs l'accès aux ressources du service de file d'attente, créez des politiques GIA avec des types de ressource de file d'attente.
Pour accéder à toutes les ressources du service de file d'attente, utilisez le type de ressource queues
.
Si vous ne voulez pas que les utilisateurs gèrent les files d'attente, mais que vous voulez qu'ils produisent vers une file d'attente ou consomment à partir d'une file d'attente, utilisez les types de ressources individuels suivants :
queue-push
queue-pull
Pour plus d'informations, voir Exemples de politiques.
Variables prises en charge
Le service de file d'attente prend en charge toutes les variables générales, plus celles répertoriées ici.
Pour plus d'informations sur les variables générales prises en charge par les services OCI, voir Variables générales pour toutes les demandes.
Variable | Type de variable | Source |
---|---|---|
target.queue.id |
Entité (OCID) | Demande |
target.queue.name |
String | Demande |
Détails pour les combinaisons Verbes + Type de ressource
Différents verbes et types de ressource Oracle Cloud Infrastructure peuvent être utilisés pour créer une politique.
Les tableaux suivants présentent les autorisations et les opérations d'API couvertes par chaque verbe pour la file d'attente. Le niveau d'accès est cumulatif au fur et à mesure que vous progressez depuis inspect
à read
, use
et manage
. Un signe plus (+)
dans une cellule de tableau indique un accès incrémentiel par rapport à la cellule directement au-dessus, alors que la mention "aucun accès supplémentaire" indique qu'il n'y a aucun accès incrémentiel.
Verbes | Autorisations | API entièrement couvertes | API partiellement couvertes |
---|---|---|---|
inspect |
QUEUE_INSPECT |
|
aucune |
read |
INSPECT + QUEUE_READ |
INSPECT +
|
aucune |
use |
READ + QUEUE_UPDATE QUEUE_PRODUCE QUEUE_CONSUME |
READ +
|
aucune |
manage |
USE + QUEUE_CREATE QUEUE_DELETE QUEUE_MOVE |
USE +
|
aucune |
Verbes | Autorisations | API entièrement couvertes | API partiellement couvertes |
---|---|---|---|
inspect |
aucune |
aucune |
aucune |
read |
aucune |
aucune |
aucune |
use |
QUEUE_PRODUCE |
|
aucune |
manage |
aucune |
aucune |
aucune |
Verbes | Autorisations | API entièrement couvertes | API partiellement couvertes |
---|---|---|---|
inspect |
aucune |
aucune |
aucune |
read |
aucune |
aucune |
aucune |
use |
QUEUE_CONSUME |
|
aucune |
manage |
aucune |
aucune |
aucune |
Autorisations requises pour chaque opération d'API
Le tableau suivant répertorie les opérations d'API pour le service de file d'attente dans un ordre logique, regroupées par type de ressource.
Les types de ressource sont queues
, queue-push
et queue-pull
.
Pour plus d'informations sur les autorisations, voir Autorisations.
Opération d'API | Autorisations requises pour utiliser l'opération |
---|---|
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 |
Exemples de politique
En savoir plus sur les politiques GIA pour le service de file d'attente à l'aide d'exemples.
Pour les administrateurs, la politique suivante permet au groupe spécifié d'exécuter toutes les opérations sur les files d'attente et les ressources connexes du service de file d'attente :
Allow QueueManagers to manage queues in compartment <compartment_name>
Utilisez les politiques suivantes pour permettre à un groupe spécifié de produire ou de consommer des ressources d'une file d'attente :
Allow QueueProducers to use queue-push in compartment <compartment_name>
Allow QueueConsumers to use queue-pull in compartment <compartment_name>
Utilisez la politique suivante pour permettre à un groupe spécifié d'inspecter et de lire les détails de la file d'attente :
Allow QueueReaders to read queues in compartment <compartment_name>