Políticas de Fila
Use o serviço Oracle Cloud Infrastructure IAM (Identity and Access Management) para criar políticas para suas filas.
Este tópico abrange detalhes da criação de políticas para controlar o acesso ao serviço Queue.
Visão Geral da Sintaxe de Política
A sintaxe geral de uma instrução de política é:
allow <subject> to <verb> <resource-type> in <location> where <condition>
Por exemplo, você pode especificar:
-
Um grupo comum ou dinâmico por nome ou OCID como
<subject>
. Ou você pode usarany-user
para abranger todos os usuários da tenancy. -
inspect
,read
,use
emanage
como<verb>
para conceder a um<subject>
acesso a uma ou mais permissões.Conforme você percorre
inspect
>read
>use
>manage
, o nível de acesso geralmente aumenta e as permissões concedidas são cumulativas. Por exemplo,use
incluiread
mais a capacidade de atualizar. -
Uma família de recursos como
virtual-network-family
para oresource-type
. Ou você pode especificar um recurso individual em uma família, comovcns
esubnets
. -
Um compartimento por nome ou OCID como
<location>
. Ou você pode usartenancy
para abranger toda a tenancy. -
Uma ou mais condições em
<condition>
, que devem ser atendidas para que o acesso seja concedido. Para várias condições, você pode usarany
ouall
.Uma condição consiste em uma ou mais variáveis. Uma variável pode ser relevante para a própria solicitação (por exemplo,
request.operation
) ou para o recurso que está sendo utilizado na solicitação (por exemplo,target.queue.id
). Como ilustração, para permitir que um grupo gerencie um espaço de trabalho específico e não qualquer outro espaço de trabalho:allow group <group-name> to manage queues in compartment <compartment-name> where target.queue.id = '<queue-ocid>'
Como alternativa, para permitir que um grupo gerencie todos os recursos do serviço Queue na tenancy:
allow group <group-name> to manage queues in tenancy
Para obter mais informações sobre a criação de políticas, consulte Conceitos Básicos de Políticas e Referência de Políticas.
Tipos de Recursos
Para conceder aos usuários acesso aos recursos do serviço Queue, crie políticas de IAM com tipos de recursos do serviço Queue.
Para acessar todos os recursos do serviço Queue, use o tipo de recurso queues
.
Se você não quiser que os usuários gerenciem filas, mas quiser que eles produzam para uma fila ou consumam de uma fila, use os seguintes tipos de recursos individuais:
queue-push
queue-pull
Consulte Exemplos de Política para obter mais informações.
Variáveis com Suporte
O serviço Queue suporta todas as variáveis gerais, além das listadas aqui.
Para obter mais informações sobre variáveis gerais que têm suporte dos serviços do OCI, consulte Variáveis Gerais para Todas as Solicitações.
Variável | Tipo de Variável | Origem |
---|---|---|
target.queue.id |
Entidade (OCID) | Solicitação |
target.queue.name |
String | Solicitação |
Detalhes das Combinações de Verbos e Tipo de Recurso
Há diversos verbos e tipos de recursos do Oracle Cloud Infrastructure que podem ser usados para criar uma política.
As tabelas a seguir mostram as permissões e operações de API abrangidas por cada verbo do Queue. O nível de acesso é cumulativo conforme você vai de inspect
a read
a use
a manage
. Um sinal de mais (+)
em uma célula da tabela indica acesso incremental em comparação com a célula diretamente acima, enquanto "nenhum extra" indica nenhum acesso incremental.
Verbos | Permissões | APIs Totalmente Incluídas | APIs Parcialmente Incluídas |
---|---|---|---|
inspect |
QUEUE_INSPECT |
|
none |
read |
INSPECT + QUEUE_READ |
INSPECT +
|
none |
use |
READ + QUEUE_UPDATE QUEUE_PRODUCE QUEUE_CONSUME |
READ +
|
none |
manage |
USE + QUEUE_CREATE QUEUE_DELETE QUEUE_MOVE |
USE +
|
none |
Verbos | Permissões | APIs Totalmente Incluídas | APIs Parcialmente Incluídas |
---|---|---|---|
inspect |
none |
none |
none |
read |
none |
none |
none |
use |
QUEUE_PRODUCE |
|
none |
manage |
none |
none |
none |
Verbos | Permissões | APIs Totalmente Incluídas | APIs Parcialmente Incluídas |
---|---|---|---|
inspect |
none |
none |
none |
read |
none |
none |
none |
use |
QUEUE_CONSUME |
|
none |
manage |
none |
none |
none |
Permissões Exigidas para cada Operação de API
A tabela a seguir lista as operações de API do serviço Queue em ordem lógica, agrupadas por tipo de recurso.
Os tipos de recursos são queues
, queue-push
e queue-pull
.
Para obter informações sobre permissões, consulte Permissões.
Operação de API | Permissões Obrigatórias para Usar a Operação |
---|---|
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 |
Exemplos de Política
Conheça as políticas de IAM do serviço Queue usando exemplos.
Para administradores, a política a seguir permite que o grupo especificado faça tudo com filas e recursos do serviço Queue relacionados:
Allow QueueManagers to manage queues in compartment <compartment_name>
Use as seguintes políticas para permitir que um grupo especificado produza ou consuma de uma fila:
Allow QueueProducers to use queue-push in compartment <compartment_name>
Allow QueueConsumers to use queue-pull in compartment <compartment_name>
Use a seguinte política para permitir que um grupo especificado inspecione e leia detalhes da fila:
Allow QueueReaders to read queues in compartment <compartment_name>