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 utiliser any-user pour couvrir tous les utilisateurs de la location.

  • inspect, read, use et manage 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 inclut read et la possibilité de mettre à jour.

  • Une famille de ressources comme virtual-network-family pour resource-type. Vous pouvez également spécifier une ressource individuelle d'une famille telle que vcns et subnets.

  • Un compartiment par nom ou OCID comme <location>. Vous pouvez également utiliser tenancy 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 utiliser any ou all.

    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.

queue
Verbes Autorisations API entièrement couvertes API partiellement couvertes
inspect

QUEUE_INSPECT

ListQueues

ListWorkRequests

ListWorkRequestErrors

ListWorkRequestLogs

aucune

read

INSPECT +

QUEUE_READ

INSPECT +

GetQueue

GetWorkRequest

GetStats

ListChannels

aucune

use

READ +

QUEUE_UPDATE

QUEUE_PRODUCE

QUEUE_CONSUME

READ +

UpdateQueue

PutMessages

GetMessages

UpdateMessage

DeleteMessage

aucune

manage

USE +

QUEUE_CREATE

QUEUE_DELETE

QUEUE_MOVE

USE +

CreateQueue

DeleteQueue

MoveQueue

aucune

queue-push
Verbes Autorisations API entièrement couvertes API partiellement couvertes
inspect

aucune

aucune

aucune

read

aucune

aucune

aucune

use

QUEUE_PRODUCE

PutMessages

aucune

manage

aucune

aucune

aucune

queue-pull
Verbes Autorisations API entièrement couvertes API partiellement couvertes
inspect

aucune

aucune

aucune

read

aucune

aucune

aucune

use

QUEUE_CONSUME

GetMessages

UpdateMessage

DeleteMessage

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.

Autorisations requises
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>