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 usar any-user para abranger todos os usuários da tenancy.

  • inspect, read, use e manage 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 inclui read mais a capacidade de atualizar.

  • Uma família de recursos como virtual-network-family para o resource-type. Ou você pode especificar um recurso individual em uma família, como vcns e subnets.

  • Um compartimento por nome ou OCID como <location>. Ou você pode usar tenancy 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 usar any ou all.

    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.

queue
Verbos Permissões APIs Totalmente Incluídas APIs Parcialmente Incluídas
inspect

QUEUE_INSPECT

ListQueues

ListWorkRequests

ListWorkRequestErrors

ListWorkRequestLogs

none

read

INSPECT +

QUEUE_READ

INSPECT +

GetQueue

GetWorkRequest

GetStats

ListChannels

none

use

READ +

QUEUE_UPDATE

QUEUE_PRODUCE

QUEUE_CONSUME

READ +

UpdateQueue

PutMessages

GetMessages

UpdateMessage

DeleteMessage

none

manage

USE +

QUEUE_CREATE

QUEUE_DELETE

QUEUE_MOVE

USE +

CreateQueue

DeleteQueue

MoveQueue

none

queue-push
Verbos Permissões APIs Totalmente Incluídas APIs Parcialmente Incluídas
inspect

none

none

none

read

none

none

none

use

QUEUE_PRODUCE

PutMessages

none

manage

none

none

none

queue-pull
Verbos Permissões APIs Totalmente Incluídas APIs Parcialmente Incluídas
inspect

none

none

none

read

none

none

none

use

QUEUE_CONSUME

GetMessages

UpdateMessage

DeleteMessage

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.

Permissões Obrigatórias
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>