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 Certificate Authority Service. Para mais informações sobre o IAM, consulte a Visão geral do IAM.
Políticas gerais do IAM
No serviço de CA, você concede papéis do IAM a usuários ou contas de serviço para criar e gerenciar recursos de serviço de CA. É possível adicionar essas vinculações de papéis 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.
- Nível do projeto ou da organização para conceder acesso a todos os pools de CAs 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 Auditor (roles/privateca.auditor
) no nível do projeto
pode ver todos os recursos no projeto. As políticas de IAM
definidas em um pool de autoridade de certificação (CA) são herdadas por todas as CAs nesse pool de CAs.
Os papéis do IAM não podem ser concedidos em certificados e recursos de CA.
Políticas condicionais do IAM
Se você tiver um pool de CAs compartilhados que possa ser usado por vários usuários autorizados a solicitar diferentes tipos de certificados, será possível definir condições do IAM para aplicar o acesso baseado em atributos e executar determinadas operações em um pool de ACs.
As vinculações de papéis condicionais do IAM permitem conceder acesso aos principais
apenas se as condições especificadas forem atendidas. Por exemplo, se o papel Solicitante do certificado estiver vinculado ao usuário alice@example.com
em um pool de CAs com a condição de que as SANs DNS solicitadas sejam um subconjunto de ['alice@example.com', 'bob@example.com']
, esse usuário só poderá solicitar certificados do mesmo pool de CAs se a SAN solicitada for um desses dois valores permitidos. É possível definir condições em vinculações do IAM
usando expressões da Common Expression Language (CEL). Essas condições podem
ajudar você a restringir ainda mais os tipos de certificados que um usuário pode solicitar. Para
informações sobre como usar expressões CEL para condições do IAM, consulte
Dialeto Common Expression Language (CEL) para políticas do IAM.
Antes de começar
- Ative a API.
- Crie um pool de ACs e de ACs seguindo as instruções em qualquer um dos guias de início rápido.
- Leia sobre os papéis do IAM disponíveis para o Certificate Authority Service.
Como configurar vinculações de políticas do IAM no nível do projeto
Os cenários a seguir descrevem como conceder aos usuários acesso aos recursos do serviço de CA no nível do projeto.
Como gerenciar recursos
Um administrador de serviço de CA (roles/privateca.admin
) tem permissões para
gerenciar todos os recursos de serviço de CA e definir políticas do IAM
em pools de CAs e modelos de certificado.
Para atribuir o papel de administrador de serviço de CA (roles/privateca.admin
) a um usuário no nível do projeto, use as seguintes instruções:
Console
No console do Google Cloud, abra a página IAM.
Selecione o projeto.
Clique em
CONCEDER ACESSO.No campo Novos principais, insira o endereço de e-mail da principal ou outro identificador.
Na lista Selecionar um papel, escolha o papel Administrador de serviço de CA.
Clique em Save.
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 a que você quer atribuir o papel de administrador de serviço de CA.
A sinalização --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 CAs. Esse papel também permite que o autor da chamada revogue
certificados emitidos pelas CAs no pool de CAs.
Para atribuir o papel de gerente de operações de serviço de CA (roles/privateca.caManager
) a um usuário no nível do projeto, use as seguintes instruções:
Console
No console do Google Cloud, abra a página IAM.
Selecione o projeto.
Clique em
CONCEDER ACESSO.No campo Novos principais, insira o endereço de e-mail da principal ou outro identificador.
Na lista Selecionar um papel, escolha o papel de Gerente de operações de serviço de CA.
Clique em Save.
gcloud
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=MEMBER \
--role=roles/privateca.caManager
Substitua:
- PROJECT_ID: o identificador exclusivo do projeto.
- MEMBER: o usuário ou a conta de serviço a que você quer adicionar o papel do IAM.
A sinalização --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 CA usando uma chave atual do Cloud KMS também exige que o autor da chamada seja um administrador da chave do Cloud KMS.
O administrador do Cloud KMS (roles/cloudkms.admin
) tem acesso total a todos os recursos do Cloud KMS, exceto às operações de criptografia e descriptografia. Para
mais informações sobre os papéis do IAM para o Cloud KMS, consulte
Cloud KMS: permissões e papéis.
Para conceder o papel Administrador do Cloud KMS (roles/cloudkms.admin
) a um usuário, siga
estas instruções:
Console
No console do Google Cloud, acesse a página Cloud Key Management Service.
Em Keyrings, clique no keyring que contém a chave de assinatura da CA.
Clique na chave que é a de assinatura da CA.
Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Em seguida, clique em Permissões.
Clique em
adicionar conta principal.No campo Novos principais, insira o endereço de e-mail da principal ou outro identificador.
Na lista Selecionar um papel, escolha o papel Administrador do Cloud KMS.
Clique em Save.
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 mais informações sobre keyrings, consulte Keyrings.
- MEMBER: a conta de usuário ou serviço a que você quer adicionar a vinculação do IAM.
A sinalização --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 kmskeys 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 de CA. Quando concedido para um pool de ACs específico, ele concede acesso de leitura ao pool de ACs. Se o pool de CAs estiver no nível Enterprise, o usuário com esse papel também poderá ver certificados e CRLs emitidos pelas CAs no pool de CAs. Atribua esse papel a indivíduos responsáveis por validar a segurança e as operações do pool de ACs.
Para atribuir o papel de Auditor de serviço de CA (roles/privateca.auditor
) a um usuário no nível do projeto, use as seguintes instruções:
Console
No console do Google Cloud, abra a página IAM.
Selecione o projeto.
Clique em
CONCEDER ACESSO.No campo Novos principais, insira o endereço de e-mail da principal ou outro identificador.
Na lista Selecionar um papel, escolha o papel Auditor de serviço de CA.
Clique em Save.
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 a quem você quer atribuir o papel de Auditor de serviço de CA (
roles/privateca.auditor
).
A sinalização --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
Nesta seção, descrevemos como configurar vinculações de política 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
) no nível do recurso para gerenciar um pool de ACs ou um modelo de certificado específico.
Console
No console do Google Cloud, acesse a página Certificate Authority Service.
Acessar o Certificate Authority Service (em inglês)
Clique na guia Gerenciador de pools de CAs e selecione o pool de ACs a que você quer conceder permissões.
Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Em seguida, clique em Permissões.
Clique em
adicionar conta principal.No campo Novas principais, digite o endereço de e-mail da principal ou outro identificador.
Na lista Selecionar um papel, escolha o papel Administrador de serviço de CA.
Clique em Save. 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 para que você quer definir a política do IAM.
- LOCATION: o local do pool de ACs. Para ver a lista completa de locais, consulte Locais.
- MEMBER: a conta de usuário ou serviço à qual você quer atribuir o papel do IAM.
A sinalização --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 de CA em um modelo de certificado.
Também é possível conceder o papel de gerente de operações de serviço de CA (roles/privateca.caManager
) em um pool de ACs específico. Esse papel permite que o autor da chamada revogue certificados emitidos por CAs nesse pool de CAs.
Console
No console do Google Cloud, acesse a página Certificate Authority Service.
Acessar o Certificate Authority Service (em inglês)
Clique na guia Gerenciador de pools de CAs e selecione o pool de ACs a que você quer conceder permissões.
Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Em seguida, clique em Permissões.
Clique em
adicionar conta principal.No campo Novas principais, digite o endereço de e-mail da principal ou outro identificador.
Na lista Selecionar um papel, escolha o papel Gerente de operações de serviço de CA.
Clique em Save. O principal recebe o papel selecionado no recurso do pool de ACs a que 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 ver a lista completa de locais, consulte Locais.
- MEMBER: o identificador exclusivo do usuário a quem você quer atribuir o papel de Gerente de operações de serviço de CA (
roles/privateca.caManager
).
A sinalização --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.
Como criar certificados
Conceda o papel de Gerenciador de certificados de serviço de CA (roles/privateca.certificateManager
, na sigla em inglês) aos usuários para permitir que eles enviem solicitações de emissão de certificado para um pool de ACs. Esse papel também
dá acesso de leitura a recursos de serviço de CA. Para permitir apenas a criação de certificados sem acesso de leitura, conceda o papel de Solicitante do certificado de serviço de CA (roles/privateca.certificateRequester
, na sigla em inglês). Para mais informações sobre os papéis do IAM para o serviço de CA, consulte
Controle de acesso com o IAM.
Se você quiser conceder ao usuário acesso para criar certificados para uma CA específica, siga as instruções abaixo.
Console
No console do Google Cloud, acesse a página Certificate Authority Service.
Acessar o Certificate Authority Service (em inglês)
Clique em Gerenciador de pools de CAs e selecione o pool de ACs para o qual você quer conceder permissões.
Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Em seguida, clique em Permissões.
Clique em
adicionar conta principal.No campo Novas principais, digite o endereço de e-mail da principal ou outro identificador.
Na lista Selecionar um papel, escolha o papel Gerenciador de certificados de serviço de CA.
Clique em Save. O principal recebe o papel selecionado no recurso do pool de ACs a que 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 ver a lista completa de locais, consulte Locais.
- MEMBER: o identificador exclusivo do usuário a quem você quer atribuir o papel Gerenciador de certificados de serviço de CA (
roles/privateca.certificateManager
).
A sinalização --role
assume o papel do IAM que você quer atribuir ao membro.
Como adicionar vinculações de política 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
No console do Google Cloud, acesse a página Certificate Authority Service.
Acessar o Certificate Authority Service (em inglês)
Clique na guia Gerenciador de modelos e selecione o modelo de certificado a que você quer conceder permissões.
Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Em seguida, clique em Permissões.
Clique em
adicionar conta principal.No campo Novas principais, digite o endereço de e-mail da principal ou outro identificador.
Escolha um papel a ser concedido na lista suspensa Selecionar um papel.
Clique em Save.
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 ver a lista completa de locais, consulte Locais.
- MEMBER: a conta de usuário ou serviço a que você quer 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 Models add-iam-policy-binding.
Para mais informações sobre como modificar o papel do IAM de um usuário, consulte Como conceder acesso.
Como remover vinculações de políticas do IAM
É possível remover uma vinculação de política do IAM usando o comando remove-iam-policy-binding
da Google Cloud CLI.
Para remover uma política do IAM em um pool de ACs 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 ver a lista completa de locais, consulte Locais.
- MEMBER: a conta de usuário ou serviço da qual você quer 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 da qual você quer 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 models remove-iam-policy-binding.
Para mais informações sobre como remover o papel do IAM de um usuário, consulte Como revogar o acesso.
A seguir
- Revise os papéis do IAM para o serviço de CA e as permissões associadas.
- Saiba mais sobre modelos e políticas de emissão.
- Saiba como gerenciar controles de política.