Políticas do OCI Cache IAM

Saiba mais sobre as políticas de IAM e os detalhes de permissão necessários para o OCI Cache.

Permissões de Usuário

Para criar ou gerenciar um cluster, os usuários precisam de permissões para gerenciar recursos do OCI Cache e acessar os recursos de Rede necessários.

O exemplo de política a seguir concede essas permissões ao grupo ClusterAdmins:

Allow group ClusterAdmins to manage redis-family in compartment <USER_COMPARTMENT>
Allow group ClusterAdmins to use virtual-network-family in compartment <USER_COMPARTMENT>

Você pode configurar essas permissões com mais granularidade. Consulte Exemplos de Política.

Tipos de Recursos e Permissões

Lista de tipos de recursos do OCI Cache e permissões associadas.

Para designar permissões a todos os recursos do OCI Cache, use o tipo de agregação redis-family. Para obter mais informações, consulte Permissões.

A tabela a seguir lista todos os recursos do redis-family:

Nome de Família Tipo de Recurso Individual
redis-family
  • redis-clusters
  • oci-cache-users
  • oci-cache-configsets
  • oci-cache-backups
  • redis-work-requests

Uma política que usa <verb> redis-family é igual a gravar uma política com uma instrução <verb> <resource-type> separada para cada tipo de recurso individual.

Tipo de Recurso Permissões
redis-clusters
  • REDIS_CLUSTER_INSPECT
  • REDIS_CLUSTER_READ
  • REDIS_CLUSTER_USE
  • REDIS_CLUSTER_MANAGE
  • REDIS_CLUSTER_REPLICAR
oci-cache-usuários
  • OCI_CACHE_USER_INSPECT
  • OCI_CACHE_USER_READ
  • OCI_CACHE_USER_USE
  • OCI_CACHE_USER_MANAGE
conjuntos de configurações do oci-cache
  • OCI_CACHE_CONFIGSET_INSPECT
  • OCI_CACHE_CONFIGSET_READ
  • OCI_CACHE_CONFIGSET_USE
  • OCI_CACHE_CONFIGSET_MANAGE
oci-cache-backups
  • OCI_CACHE_BACKUP_INSPECT
  • OCI_CACHE_BACKUP_READ
  • OCI_CACHE_BACKUP_MANAGE
  • OCI_CACHE_BACKUP_USE
redis-solicitações de trabalho
  • REDIS_WORK_REQUEST_INSPECT
  • REDIS_WORK_REQUEST_READ
  • REDIS_WORK_REQUEST_MANAGE

Detalhes para Combinações de Verbo + Tipo de Recurso

Identifique as permissões e operações da API cobertas por cada verbo para recursos do OCI Cache.

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 quando comparado à célula anterior.

Para obter informações sobre como conceder acesso, consulte Permissões.

redis-clusters
Verbos Permissões APIs Totalmente Cobertas APIs Parcialmente Cobertas
inspecionar REDIS_CLUSTER_INSPECT ListRedisClusters nenhum
read

inspect+

REDIS_CLUSTER_READ

inspect+

GetRedisCluster

ListCrrMembers

nenhum
use

read+

REDIS_CLUSTER_USE

read+

ChangeRedisClusterCompartment

ListAttachedOciCacheUsers

AttachOciCacheUsers (também precisa de OCI_CACHE_USER_USE)

DetachOciCacheUsers (também precisa de OCI_CACHE_USER_USE)

Generate Token for OCI Cache User (também precisa de OCI_CACHE_USER_USE)

UpdateRedisCluster (também precisa de OCI_CACHE_CONFIGSET_USE)

manage

use+

REDIS_CLUSTER_MANAGE

REDIS_CLUSTER_REPLICATE

use+

DeleteRedisCluster

ConvertToSecondaryCluster

ConvertToStandaloneCluster

Switchover

CreateRedisCluster (também precisa de OCI_CACHE_CONFIGSET_USE e REDIS_CLUSTER_REPLICATE no cluster principal selecionado)

oci-cache-usuários
Verbos Permissões APIs Totalmente Cobertas APIs Parcialmente Cobertas
inspect OCI_CACHE_USER_INSPECT ListOciCacheUsers nenhum
read

inspect+

OCI_CACHE_USER_READ

inspect+

GetOciCacheUser

nenhum
use

read+

OCI_CACHE_USER_USE

read+

ChangeOciCacheUserCompartment

UpdateOciCacheUser

AttachOciCacheUsers (também precisa de REDIS_CLUSTER_USE)

DetachOciCacheUsers (também precisa de REDIS_CLUSTER_USE)

Generate Token for OCI Cache User (também precisa de REDIS_CLUSTER_USE)

manage

use+

OCI_CACHE_USER_MANAGE

use+

CreateOciCacheUser

DeleteOciCacheUser

nenhum
conjuntos de configurações do oci-cache
Verbos Permissões APIs Totalmente Cobertas APIs Parcialmente Cobertas
inspect OCI_CACHE_CONFIGSET_INSPECT ListOciCacheConfigSets

ListOciCacheDefaultConfigSets

nenhum
read

inspect+

OCI_CACHE_CONFIGSET_READ

inspect+

GetOciCacheConfigSet

GetOciCacheDefaultConfigSet

nenhum
use

read+

OCI_CACHE_CONFIGSET_USE

read+

ChangeOciCacheConfigSetCompartment

ListAssociatedOciCacheClusters

UpdateOciCacheConfigSet

CreateRedisCluster (também precisa de REDIS_CLUSTER_MANAGE)

UpdateRedisCluster (também precisa de REDIS_CLUSTER_USE)

manage

use+

OCI_CACHE_CONFIGSET_MANAGE

use+

CreateOciCacheConfigSet

DeleteOciCacheConfigSet

nenhum
oci-cache-backups
Verbos Permissões APIs Totalmente Cobertas APIs Parcialmente Cobertas
inspect OCI_CACHE_BACKUP_INSPECT ListOciCacheBackups nenhum
read

inspect+

OCI_CACHE_BACKUP_READ

inspect+

GetOciCacheBackup

nenhum
use

read+

OCI_CACHE_BACKUP_USE

read+

ChangeOciCacheBackupCompartment

ExportOciCacheBackupToObjectStorage

UpdateOciCacheBackup

manage

use+

OCI_CACHE_BACKUP_MANAGE

use+

CreateOciCacheBackup

DeleteOciCacheBackup

nenhum
redis-solicitações de trabalho
Verbos Permissões APIs Totalmente Cobertas APIs Parcialmente Cobertas
inspect REDIS_WORK_REQUEST_INSPECT ListWorkRequests nenhum
read

inspect+

REDIS_WORK_REQUEST_READ

inspect+

ListWorkRequestErrors

ListWorkRequestLogs

GetWorkRequest

nenhum
manage

use+

REDIS_WORK_REQUEST_MANAGE

use+

DeleteWorkRequest

nenhum

Permissões Exigidas para cada Operação de API

A tabela abaixo lista a operação de API do OCI Cache em uma ordem lógica, agrupada por resource-type.

Operação de API Permissões Obrigatórias para Usar a Operação
ListRedisClusters REDIS_CLUSTER_INSPECT
GetRedisCluster, ListCrrMembers REDIS_CLUSTER_READ
CreateRedisCluster REDIS_CLUSTER_MANAGE, OCI_CACHE_CONFIGSET_USE
ListAttachedOciCacheUsers REDIS_CLUSTER_USE
UpdateRedisCluster REDIS_CLUSTER_USE, OCI_CACHE_CONFIGSET_USE
ChangeRedisClusterCompartment REDIS_CLUSTER_USE
DeleteRedisCluster REDIS_CLUSTER_MANAGE
ListOciCacheUsers OCI_CACHE_USER_INSPECT
GetOciCacheUser OCI_CACHE_USER_READ
CreateOciCacheUser OCI_CACHE_USER_MANAGE
UpdateOciCacheUser OCI_CACHE_USER_USE
ChangeOciCacheUserCompartment OCI_CACHE_USER_USE
DeleteOciCacheUser OCI_CACHE_USER_MANAGE
AttachOciCacheUsers REDIS_CLUSTER_USE, OCI_CACHE_USER_USE
DetachOciCacheUsers REDIS_CLUSTER_USE, OCI_CACHE_USER_USE
Generate Token for OCI Cache User REDIS_CLUSTER_USE, OCI_CACHE_USER_USE
ListOciCacheConfigSets OCI_CACHE_CONFIGSET_INSPECT
GetOciCacheConfigSet OCI_CACHE_CONFIGSET_READ
CreateOciCacheConfigSet OCI_CACHE_CONFIGSET_MANAGE
UpdateOciCacheConfigSet OCI_CACHE_CONFIGSET_USE
ChangeOciCacheConfigSetCompartment OCI_CACHE_CONFIGSET_USE
DeleteOciCacheConfigSet OCI_CACHE_CONFIGSET_MANAGE
ListAssociatedOciCacheClusters OCI_CACHE_CONFIGSET_USE
ListOciCacheDefaultConfigSets OCI_CACHE_CONFIGSET_INSPECT
GetOciCacheDefaultConfigSet OCI_CACHE_CONFIGSET_READ
ListOciCacheBackups OCI_CACHE_BACKUP_INSPECT
GetOciCacheBackup OCI_CACHE_BACKUP_READ
CreateOciCacheBackup, DeleteOciCacheBackup OCI_CACHE_BACKUP_MANAGE
UpdateOciCacheBackup, ExportOciCacheBackupToObjectStorage , ChangeOciCacheBackupCompartment OCI_CACHE_BACKUP_USE
ConvertToSecondaryCluster, Switchover REDIS_CLUSTER_REPLICATE em ambos os clusters
ConvertToStandaloneCluster REDIS_CLUSTER_REPLICATE no cluster secundário
CreateRedisCluster ao criar um cluster secundário REDIS_CLUSTER_MANAGE no novo cluster secundário, REDIS_CLUSTER_REPLICATE no cluster principal e OCI_CACHE_CONFIGSET_USE na configuração selecionada
ListWorkRequests REDIS_WORK_REQUEST_INSPECT
ListWorkRequestErrors REDIS_WORK_REQUEST_READ
ListWorkRequestLogs REDIS_WORK_REQUEST_READ
GetWorkRequest REDIS_WORK_REQUEST_READ
DeleteWorkRequest REDIS_WORK_REQUEST_MANAGE

Exemplos de Política

As instruções de política a seguir permitem que o grupo ClusterAdmins use e gerencie recursos do OCI Cache.

  • Permite acesso somente para uso a VCNs, compartimentos e sub-redes apenas.
    • Allow group ClusterAdmins to use compartments in tenancy
    • Allow group ClusterAdmins to use vcns in compartment <USER_NETWORK_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to use subnet in compartment <USER_NETWORK_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to use network-security-groups in compartment <USER_NETWORK_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to use vcns in compartment <USER_ENGINEERING_COMPARTMENT_NAME>
    Observação

    As VCNs estão localizadas no compartimento Rede, enquanto os clusters estão no compartimento Engenharia.
  • Permite acesso somente para uso a VNICs no compartimento Engenharia. Por exemplo:

    Allow group ClusterAdmins to use VNICs in compartment <USER_ENGINEERING_COMPARTMENT_NAME>
  • Permite gerenciar permissão para criar ou atualizar pontos finais privados. Por exemplo:
    • Allow group ClusterAdmins to manage redis-family in compartment <USER_ENGINEERING_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to manage redis-work-requests in compartment <USER_ENGINEERING_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to manage vcns in compartment <USER_NETWORK_COMPARTMENT_NAME> where ALL{ ANY
      { request.operation = 'CreatePrivateEndpoint', request.operation = 'UpdatePrivateEndpoint', request.operation ='DeletePrivateEndpoint', request.operation = 'EnableReverseConnection', request.operation = 'ModifyReverseConnection', request.operation = 'DisableReverseConnection' }
      , ANY {request.operation = 'CreateRedisCluster', request.operation = 'DeleteRedisCluster' , request.operation = 'UpdateRedisCluster' } }
  • (Opcional) Permite o tráfego nas portas Redis. Por exemplo:

    Allow group ClusterAdmins to manage security-lists in compartment <USER_NETWORK_COMPARTMENT_NAME> where ANY
    { request.operation = 'CreateRedisCluster', request.operation = 'DeleteRedisCluster' , request.operation = 'UpdateRedisCluster' }
    Observação

    Se a política não for fornecida, você deverá adicionar regras de segurança e permitir tráfego TCP para portas, 6379.

A seguinte instrução de política permite que o grupo ClusterUsers use clusters, mas restrinja outro acesso:

Allow group ClusterUsers to use redis-clusters in compartment <USER_COMPARTMENT>

A seguinte instrução de política permite que o grupo CacheUsers use usuários do OCI Cache:

Allow group CacheUsers to use oci-cache-users in compartment <USER_COMPARTMENT>

As seguintes instruções de política permitem gerenciar a permissão para anexar e desanexar pontos finais privados:

Allow group ClusterAdmins to manage vcns in compartment <USER_NETWORK_COMPARTMENT_NAME> where ALL{ ANY
{ request.operation = 'CreatePrivateEndpoint', request.operation = 'UpdatePrivateEndpoint', request.operation ='DeletePrivateEndpoint', request.operation = 'EnableReverseConnection', request.operation = 'ModifyReverseConnection', request.operation = 'DisableReverseConnection' }
, ANY {request.operation = 'CreateRedisCluster', request.operation = 'DeleteRedisCluster' , request.operation = 'UpdateRedisCluster', request.operation = 'AttachOciCacheUsers', request.operation = 'DetachOciCacheUsers' } }

A seguinte instrução de política permite o tráfego nas portas Redis para anexação e desanexação:

Allow group ClusterAdmins to manage security-lists in compartment <USER_NETWORK_COMPARTMENT_NAME> where ANY
{ request.operation = 'CreateRedisCluster', request.operation = 'DeleteRedisCluster' , request.operation = 'UpdateRedisCluster',  request.operation = 'AttachOciCacheUsers', request.operation = 'DetachOciCacheUsers'}

A seguinte instrução de política permite que o grupo ClusterConfig use as configurações do OCI Cache:

Allow group ClusterConfig to use oci-cache-configsets in compartment <USER_COMPARTMENT>

A seguinte instrução de política permite que os usuários do grupo SecurityAdmins criem, atualizem e excluam todas as políticas de Roteamento de Pacote de Confiança Zero em toda a tenancy:

Allow group SecurityAdmins to manage zpr-configuration in tenancy
Allow group SecurityAdmins to manage security-attribute-namespace in tenancy
Allow group SecurityAdmins to manage zpr-policy in tenancy

A instrução de política a seguir permite que o grupo cluster-admin gerencie somente o namespace do atributo de segurança, cache-applications das políticas de Roteamento de Pacote de Confiança Zero.

Allow group cluster-admin to manage security-attribute-namespace where target.security-attribute-namespace.name = 'cache-applications'

A instrução de política a seguir permite gerenciar permissão para criar um backup. Por exemplo,

Allow group CacheBackupUsers to manage redis-family in compartment <USER_COMPARTMENT>

As instruções de política a seguir fornecem permissões para gerenciar recursos do serviço Object Storage para operações de exportação e importação de backup do OCI Cache.

  • As seguintes políticas concedem ao serviço OCI Cache e ao serviço Object Storage acesso a um bucket específico para operações de exportação e importação de backup:
    Allow service redis-service to manage object-family in compartment <USER_COMPARTMENT> where target.bucket.name='<USER_BUCKET>'
    Allow any-user to manage object-family in compartment <USER_COMPARTMENT> where all { request.principal.type = 'service', request.service.name = /objectstorage-*/, target.bucket.name = '<USER_BUCKET>' }
  • As seguintes políticas concedem ao serviço OCI Cache e ao serviço Object Storage acesso mais amplo a todos os recursos do Object Storage em um compartimento, como para operações de backup do OCI Cache:
    Allow service redis-service to manage object-family in compartment <USER_COMPARTMENT>
    Allow any-user to manage object-family in compartment <USER_COMPARTMENT> where all { request.principal.type = 'service', request.service.name = /objectstorage-*/ }

As seguintes instruções de política permitem que o grupo CrossRegionReplicationAdmins execute operações de replicação entre regiões em clusters de diferentes compartimentos:

Allow group CrossRegionReplicationAdmins to manage redis-clusters in compartment <PRIMARY_CLUSTER_COMPARTMENT>
                        Allow group CrossRegionReplicationAdmins to manage redis-clusters in compartment <SECONDARY_CLUSTER_COMPARTMENT>

As políticas do IAM não têm escopo para uma região do OCI. Se os clusters principal e secundário estiverem no mesmo compartimento, uma política de nível de compartimento se aplicará a ambos os clusters. Se os clusters estiverem em compartimentos distintos, conceda as permissões necessárias em ambos os compartimentos.

Observação

As operações de replicação entre regiões podem modificar os dois clusters participantes. O grupo deve ter o acesso necessário ao cluster primário e ao cluster secundário.

A seguinte instrução de política permite que o grupo CrossRegionReplicationAdmins gerencie clusters do OCI Cache em toda a tenancy:

Allow group CrossRegionReplicationAdmins to manage redis-clusters in tenancy
Cuidado

Esta política concede ao grupo permissão para gerenciar cada cluster do OCI Cache na tenancy. Conceda acesso no nível do compartimento quando possível.

A seguinte instrução de política permite que o grupo CrossRegionReplicationAdmins gerencie a replicação entre regiões quando ambos os clusters estiverem no mesmo compartimento:

Allow group CrossRegionReplicationAdmins to manage redis-clusters in compartment <CLUSTER_COMPARTMENT>
Observação

O verbo manage concede todas as permissões associadas ao redis-clusters, incluindo permissões para criar, atualizar, excluir e replicar clusters.

Para criar um cluster como um cluster secundário, conceda também as permissões necessárias para criar um cluster do OCI Cache, incluindo acesso à configuração, à VCN, à sub-rede e aos grupos de segurança de rede selecionados.

Observação

O OCI Cache gerencia a conectividade entre regiões privada usada para replicação. Você não precisa de permissão para criar conexões de pareamento remoto para replicação entre regiões.

Se você não conhece as políticas, consulte Conceitos Básicos de Políticas e Políticas Comuns.