Configurar políticas do IAM

Nesta página, descrevemos como configurar políticas do Identity and Access Management (IAM) que permitem que os membros criem e gerenciem recursos do serviço de autoridade certificadora. Para mais informações sobre o IAM, consulte a Visão geral do IAM.

Políticas gerais do IAM

No CA Service, você concede papéis do IAM a usuários ou contas de serviço para criar e gerenciar recursos do CA Service. Você pode adicionar essas vinculações de função nos seguintes níveis:

  • Nível do pool de ACs para gerenciar o acesso a um pool de ACs específico e às ACs nesse pool de ACs.
  • Nível do projeto ou da organização para conceder acesso a todos os pools de ACs nesse escopo.

Os papéis são herdados quando são concedidos em um nível de recurso superior. Por exemplo, um usuário que recebe o papel de auditor (roles/privateca.auditor) no nível do projeto pode acessar todos os recursos do projeto. As políticas do IAM que são definidas em um pool de autoridades certificadoras (ACs) são herdadas por todas as ACs nesse pool.

Não é possível conceder papéis do IAM em certificados e recursos de CA.

Políticas condicionais do IAM

Se você tem um pool de ACs compartilhado que pode ser usado por vários usuários que estão autorizados a solicitar diferentes tipos de certificados, é possível definir condições do IAM para aplicar o acesso baseado em atributos e determinadas operações em um pool de ACs.

As vinculações de papéis condicionais do IAM permitem conceder acesso aos principais somente se as condições especificadas forem atendidas. Por exemplo, se o Solicitante de certificado está vinculado ao usuário alice@example.com em um pool de ACs com a condição de que as SANs DNS solicitadas são um subconjunto de ['alice@example.com', 'bob@example.com']; esse usuário poderá solicitar certificados do mesmo pool de ACs somente se o o SAN solicitado é um desses dois valores permitidos. É possível definir condições no IAM vinculações usando expressões Common Expression Language (CEL). Essas condições podem ajudar a restringir ainda mais o tipo de certificado que um usuário pode solicitar. Para informações sobre como usar expressões CEL para condições do IAM, consulte Dialeto da Common Expression Language (CEL) para políticas do IAM.

Antes de começar

  • Ative a API.
  • Crie um pool de ACs e de CAs seguindo as instruções em qualquer um dos guias de início rápido.
  • Leia sobre o IAM disponíveis no Certificate Authority Service.

Como configurar vinculações de políticas do IAM para envolvidos no projeto

Os cenários a seguir descrevem como conceder aos usuários acesso ao serviço de AC. e recursos no nível do projeto.

Como gerenciar recursos

Um administrador de serviço de CA (roles/privateca.admin) tem as permissões para: gerenciar todos os recursos do CA Service e definir políticas do IAM em pools de ACs e modelos de certificado.

Para atribuir o papel de administrador de serviço da CA (roles/privateca.admin) a um usuário no nível do projeto, siga estas instruções:

Console

  1. No console do Google Cloud, abra a página IAM.

    Acessar o Identity and Access Management

  2. Selecione o projeto.

  3. Clique em CONCEDER ACESSO.

  4. No campo Novos principais, insira o endereço de e-mail do principal ou outro identificador.

  5. Na lista Selecionar um papel, escolha Administrador de serviço de CA.

  6. Clique em Salvar.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.admin

Substitua:

  • PROJECT_ID: o identificador exclusivo do projeto.
  • MEMBER: a conta de usuário ou serviço para quem você atribuir o papel de administrador de serviço de CA.

A flag --role assume o papel do IAM que você quer atribuir ao membro.

Criação de recursos

Um gerente de operações de serviço de CA (roles/privateca.caManager) pode criar, atualizar e excluir pools de CAs e ACs. Esse papel também permite que o autor da chamada revogue certificados emitidos pelas ACs no pool de ACs.

Atribuir o CA Service Operation Manager (roles/privateca.caManager) a um usuário no nível do projeto, siga estas instruções:

Console

  1. No console do Google Cloud, abra a página IAM.

    Acessar o Identity and Access Management

  2. Selecione o projeto.

  3. Clique em CONCEDER ACESSO.

  4. No campo Novos principais, insira o endereço de e-mail do principal ou outro identificador.

  5. Na lista Selecionar papel, escolha a opção CA Service Operation Manager. de rede.

  6. Clique em Salvar.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.caManager

Substitua:

  • PROJECT_ID: o identificador exclusivo do projeto.
  • MEMBER: a conta de usuário ou serviço a que você quer adicionar o papel de IAM.

A flag --role assume o papel do IAM que você quer atribuir ao membro.

Para mais informações sobre o comando gcloud projects add-iam-policy-binding, consulte gcloud projects add-iam-policy-binding.

Opcionalmente, criar uma AC usando uma chave atual do Cloud KMS também exige o autor da chamada seja um administrador da chave do Cloud KMS.

O administrador do Cloud KMS (roles/cloudkms.admin) tem acesso completo a todos os recursos do Cloud KMS, exceto às operações de criptografia e descriptografia. Para Saiba mais sobre os papéis do IAM para o Cloud KMS em Cloud KMS: permissões e papéis.

Para conceder o papel de Administrador do Cloud KMS (roles/cloudkms.admin) a um usuário, use as seguintes instruções:

Console

  1. No console do Google Cloud, acesse a página Cloud Key Management Service.

    Acessar o Cloud Key Management Service

  2. Em Keyrings, clique no keyring que contém a chave de assinatura de AC.

  3. Clique na chave que é a chave de assinatura da AC.

  4. Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Depois, Clique em Permissões.

  5. Clique em adicionar conta principal.

  6. No campo Novos principais, insira o endereço de e-mail do principal ou outro identificador.

  7. Na lista Selecionar um papel, escolha Administrador do Cloud KMS.

  8. Clique em Salvar.

gcloud

gcloud kms keys add-iam-policy-binding KEY \
  --keyring=KEYRING --location=LOCATION \
  --member=MEMBER \
  --role=roles/cloudkms.admin

Substitua:

  • KEY: o identificador exclusivo da chave.
  • KEYRING: o keyring que contém a chave. Para Para mais informações sobre keyrings, consulte Keyrings.
  • MEMBER: a conta de usuário ou serviço para a qual você adicionar a vinculação do IAM.

A flag --role assume o papel do IAM que você quer atribuir ao membro.

Para mais informações sobre o comando gcloud kms keys add-iam-policy-binding, consulte gcloud kms keys add-iam-policy-binding.

Recursos de auditoria

Um auditor de serviço de CA (roles/privateca.auditor) tem acesso de leitura a todos os recursos no serviço da AC. Quando concedido para um pool de AC específico, concede acesso de leitura ao pool de ACs. Se o pool de ACs estiver no nível Enterprise, o o usuário com essa função também pode visualizar certificados e CRLs emitidos pelas CAs na pool de ACs. Atribua esse papel às pessoas responsáveis pela validação e as operações do pool de ACs.

Para atribuir o auditor de serviço de CA (roles/privateca.auditor) a um usuário no nível do projeto, siga estas instruções:

Console

  1. No console do Google Cloud, abra a página IAM.

    Acessar o Identity and Access Management

  2. Selecione o projeto.

  3. Clique em CONCEDER ACESSO.

  4. No campo Novos principais, insira o endereço de e-mail do principal ou outro identificador.

  5. Na lista Selecionar um papel, selecione Auditor de serviço de CA.

  6. Clique em Salvar.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.auditor

Substitua:

  • PROJECT_ID: o identificador exclusivo do projeto.
  • MEMBER: o identificador exclusivo do usuário para quem você quer atribuir o papel Auditor do CA Service (roles/privateca.auditor).

A flag --role assume o papel do IAM que você quer atribuir ao membro.

Como configurar vinculações de políticas do IAM no nível do recurso

Esta seção descreve como configurar vinculações de políticas do IAM para um recurso específico no serviço de CA.

Como gerenciar pools de CA

É possível conceder o papel de administrador de serviço de CA (roles/privateca.admin) em no nível do recurso para gerenciar um pool de ACs ou modelo de certificado específico.

Console

  1. No console do Google Cloud, acesse a página Certificate Authority Service.

    Acesse Certificate Authority Service

  2. Clique na guia Gerenciador de pool de CAs e selecione o pool de CAs em que você quer conceder permissões.

  3. Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Depois, Clique em Permissões.

  4. Clique em adicionar conta principal.

  5. No campo Novos principais, insira o endereço de e-mail do principal ou outro identificador.

  6. Na lista Selecionar um papel, escolha Administrador de serviço de CA.

  7. Clique em Salvar. O principal recebe o papel selecionado no recurso do pool de ACs.

gcloud

Para definir a política do IAM, execute o seguinte comando:

gcloud privateca pools add-iam-policy-binding POOL_ID \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.admin

Substitua:

  • POOL_ID: o identificador exclusivo do pool de ACs em que você quer definir a política do IAM.
  • LOCATION: o local do pool de ACs. Para o lista completa de locais, consulte Locais.
  • MEMBER: a conta de usuário ou serviço para a qual você atribuir o papel de IAM.

A flag --role assume o papel do IAM que você quer atribuir ao membro.

Para mais informações sobre o comando gcloud privateca pools add-iam-policy-binding, consulte gcloud privateca pools add-iam-policy-binding.

Siga as mesmas etapas para conceder o papel de Administrador de serviço da AC em um modelo de certificado.

Também é possível conceder ao CA Service Operation Manager (roles/privateca.caManager) em um pool de ACs específico. Essa função permite que o autor da chamada revogue certificados emitidos por ACs nesse pool.

Console

  1. No console do Google Cloud, acesse a página Certificate Authority Service.

    Acesse Certificate Authority Service

  2. Clique na guia Gerenciador de pool de CAs e selecione o pool de CAs em que você quer conceder permissões.

  3. Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Depois, Clique em Permissões.

  4. Clique em adicionar conta principal.

  5. No campo Novos principais, insira o endereço de e-mail do principal ou outro identificador.

  6. Na lista Selecionar um papel, selecione Administrador de operação de serviço de CA.

  7. Clique em Salvar. O principal recebe o papel selecionado no recurso do pool de ACs ao qual a AC pertence.

gcloud

Para conceder o papel a um pool de ACs específico, execute o seguinte comando gcloud:

gcloud privateca pools add-iam-policy-binding POOL_ID \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.caManager

Substitua:

  • POOL_ID: o identificador exclusivo do pool de ACs.
  • LOCATION: o local do pool de ACs. Para o lista completa de locais, consulte Locais.
  • MEMBER: o identificador exclusivo do usuário para quem você quer atribuir o papel de CA Service Operation Manager (roles/privateca.caManager).

A flag --role usa o papel do IAM que você quer atribuir ao membro.

Para mais informações sobre o comando gcloud privateca pools add-iam-policy-binding, consulte gcloud privateca pools add-iam-policy-binding.

Como criar certificados

Conceda o papel de Gerenciador de certificados de serviço de CA (roles/privateca.certificateManager). aos usuários para permitir que enviem solicitações de emissão de certificado para um pool de ACs. Essa função também concede acesso de leitura aos recursos de serviço de CA. Permitir apenas a criação de certificados sem acesso de leitura, conceda ao solicitante de certificado de serviço de CA (roles/privateca.certificateRequester) de rede. Para mais informações sobre os papéis do IAM para o serviço de CA, consulte Controle de acesso com o IAM.

Siga as instruções abaixo para conceder ao usuário acesso para criar certificados de uma AC específica.

Console

  1. No console do Google Cloud, acesse a página Certificate Authority Service.

    Acesse Certificate Authority Service

  2. Clique em Gerenciador de pool de CAs e selecione o pool de ACs em que você quer quer conceder permissões.

  3. Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Depois, Clique em Permissões.

  4. Clique em adicionar conta principal.

  5. No campo Novos principais, insira o endereço de e-mail do principal ou outra identificador.

  6. Na lista Selecionar um papel, selecione Administrador de certificado de serviço de AC.

  7. Clique em Salvar. O principal recebe o papel selecionado no recurso do pool de ACs ao qual a AC pertence.

gcloud

gcloud privateca pools add-iam-policy-binding 'POOL_ID' \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.certificateManager

Substitua:

  • POOL_ID: o identificador exclusivo do pool de ACs.
  • LOCATION: o local do pool de ACs. Para o lista completa de locais, consulte Locais.
  • MEMBER: o identificador exclusivo do usuário a quem você quer atribuir o papel de gerente de certificado de serviço de AC (roles/privateca.certificateManager).

A flag --role assume o papel do IAM que você quer atribuir ao membro.

Adicionar vinculações de políticas do IAM a um modelo de certificado

Para adicionar uma política do IAM a um modelo de certificado específico, siga estas instruções:

Console

  1. No console do Google Cloud, acesse a página Certificate Authority Service.

    Acesse Certificate Authority Service

  2. Clique na guia Gerenciador de modelos e selecione o modelo de certificado para o qual você quer conceder permissões.

  3. Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Depois, Clique em Permissões.

  4. Clique em adicionar conta principal.

  5. No campo Novos principais, insira o endereço de e-mail do principal ou outra identificador.

  6. Na lista suspensa Selecionar papel, escolha um papel para conceder.

  7. Clique em Salvar.

gcloud

gcloud privateca templates add-iam-policy-binding TEMPLATE_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Substitua:

  • LOCATION: o local do modelo de certificado. Para conferir a lista completa de locais, consulte Locais.
  • MEMBER: a conta de usuário ou serviço para a qual você adicionar a vinculação de política do IAM.
  • ROLE: o papel que você quer conceder ao membro.

Para mais informações sobre o comando gcloud privateca templates add-iam-policy-binding, consulte gcloud privateca templates add-iam-policy-binding.

Para mais informações sobre como modificar o papel do IAM de um usuário, consulte Como conceder acesso.

Remover vinculações de políticas do IAM

É possível remover uma vinculação de política do IAM atual usando o comando remove-iam-policy-binding da Google Cloud CLI.

Para remover uma política do IAM em um pool de AC específico, use o seguinte comando gcloud:

gcloud

gcloud privateca pools remove-iam-policy-binding POOL_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Substitua:

  • LOCATION: o local do pool de ACs. Para o lista completa de locais, consulte Locais.
  • MEMBER: a conta de usuário ou serviço para a qual você remover a vinculação de política do IAM.
  • ROLE: o papel que você quer remover do membro.

Para mais informações sobre o comando gcloud privateca pools remove-iam-policy-binding, consulte gcloud privateca pools remove-iam-policy-binding.

Para remover uma política do IAM em um modelo de certificado específico, use o seguinte comando gcloud:

gcloud

gcloud privateca templates remove-iam-policy-binding TEMPLATE_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Substitua:

  • LOCATION: o local do modelo de certificado. Para ver a lista completa de locais, consulte Locais.
  • MEMBER: a conta de usuário ou serviço para a qual você remover a vinculação de política do IAM.
  • ROLE: o papel que você quer remover do membro.

Para mais informações sobre o comando gcloud privateca templates remove-iam-policy-binding, consulte gcloud privateca templates remove-iam-policy-binding.

Para mais informações sobre como remover o papel do IAM de um usuário, consulte Revogar o acesso.

A seguir