Exemplos de Política

Use os exemplos a seguir para aprender a criar políticas do serviço IAM para vários recursos do Application Dependency Management.

Observação

Depois de adicionar componentes do serviço IAM (por exemplo, grupos dinâmicos e instruções de política), não tente executar as tarefas associadas imediatamente. As novas políticas do IAM exigem cerca de cinco a dez minutos para entrar em vigor.

Base de conhecimento

Crie uma política para permitir que os usuários de um grupo criem, atualizem ou excluam uma base de conhecimento:

Allow group <group-name> to manage adm-knowledge-bases in compartment <compartment_name>

Auditoria de vulnerabilidade

Crie uma política para permitir que os usuários usem uma base de conhecimento em um compartimento específico e criem, atualizem ou excluam auditorias de vulnerabilidade nesse compartimento:

Allow group <group-name> to use adm-knowledge-bases in compartment <compartment_name>
Allow group <group-name> to manage adm-vulnerability-audits in compartment <compartment_name>

Remediação

Você deve criar um grupo dinâmico para executar a correção corretamente. As regras de correspondência definem os recursos que pertencem ao grupo dinâmico:

ALL {resource.type = 'admremediationrecipe', resource.compartment.id = 'compartmentOCID'}

Crie uma política para conceder aos membros do grupo adm-admin permissão para gerenciar (inspecionar, ler, criar, atualizar, iniciar, excluir, mover) a Receita de Correção, a Execução de Correção, o Estágio de Execução de Correção, a Auditoria de Vulnerabilidade, a Recomendação e os recursos de Solicitação de Serviço:

Allow group adm-admin to manage adm-remediations-family in tenancy

Crie uma política para conceder aos membros do grupo adm-dev permissão para inspecionar, ler e usar os recursos Atividade, Execução da Atividade, Estágio de Execução da Atividade, Receita de Correção, Execução de Correção, Estágio de Execução de Correção, Auditoria de Vulnerabilidade e Recomendação. Isso não permite que os membros criem/excluam/movam atividades, excluam Execuções de Atividades, excluam Auditorias de Vulnerabilidade, excluam Recomendações:

Allow group adm-dev to use adm-family in tenancy

Para executar a remediação, crie as políticas a seguir. Você pode nomear o grupo dinâmico adequadamente e substituir compartmentOCID pelo OCID do compartimento:

Allow dynamic-group created-adm-dynamic-group to inspect dhcp-options in compartment <compartmentOCID>
Allow dynamic-group created-adm-dynamic-group to { ADM_KNOWLEDGE_BASE_READ, ADM_VULNERABILITY_AUDIT_READ, ADM_VULNERABILITY_AUDIT_CREATE } in compartment <compartmentOCID>
Allow dynamic-group created-adm-dynamic-group to inspect subnets in compartment <compartmentOCID>
Allow service adm to use subnets in compartment <compartmentOCID>
Allow service adm to use vnics in compartment <compartmentOCID>

Crie a seguinte política se estiver usando o SCM (Source Code Management) externo:

Allow dynamic-group created-adm-dynamic-group to read secret-bundles in compartment <compartmentOCID>

Crie a seguinte política se estiver usando o OCI DevOps SCM (forneça o nome do repositório):

Allow dynamic-group created-adm-dynamic-group to { DEVOPS_REPOSITORY_READ } in compartment <compartmentOCID> where target.repository.name = 'repositoryName'
Allow dynamic-group created-adm-dynamic-group to { DEVOPS_PULL_REQUEST_UPDATE, DEVOPS_PULL_REQUEST_CREATE, DEVOPS_PULL_REQUEST_INSPECT, DEVOPS_PULL_REQUEST_READ } in compartment <compartmentOCID> where target.repository.name = 'repositoryName'

Crie a seguinte política se estiver usando uma sub-rede específica do domínio de Disponibilidade:

Allow dynamic-group created-adm-dynamic-group to use subnets in compartment <compartmentOCID>
Allow dynamic-group created-adm-dynamic-group to {COMPARTMENT_INSPECT} in compartment <compartmentOCID>

Crie o seguinte grupo dinâmico e política se estiver usando o pipeline de build do OCI Devops:

ALL {resource.type = 'devopsbuildpipeline', resource.compartment.id = 'compartmentOCID'}
Allow dynamic-group devops-build-dynamic-group to { DEVOPS_BUILD_RUN_READ, DEVOPS_BUILD_RUN_CREATE } in compartment <compartmentOCID>