View a markdown version of this page

Vinculações de contas externas - AWS Certificate Manager

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Vinculações de contas externas

As vinculações de contas externas (EABs) são credenciais que autorizam os clientes da ACME a registrar contas em um endpoint da ACME. Um cliente ACME não pode solicitar certificados de um endpoint sem primeiro registrar uma conta, e o registro exige credenciais EAB válidas. Quando um administrador de PKI cria um EAB, ele o associa a uma função do IAM que controla quais operações de certificado o cliente ACME pode realizar. O administrador então distribui as credenciais do EAB fora de banda para as equipes ou sistemas que precisam de certificados.

Cada EAB produz um identificador de chave (ID da chave) e uma chave MAC. O cliente ACME usa essas credenciais durante o registro da conta para provar a autorização. Depois que a conta ACME é criada, a conta opera independentemente do EAB. Revogar ou excluir um EAB não afeta as contas ACME existentes criadas com ele.

Requisitos de função do IAM

Cada EAB está associado a uma função do IAM. Essa função determina o que o cliente ACME pode fazer ao emitir ou revogar certificados. A função deve atender aos seguintes requisitos:

Política de confiança

A função deve permitir que o diretor de serviço da ACME (acm-acme.amazonaws.com) a assuma. A política de confiança deve conceder sts:AssumeRolests:TagSession, sts:SetSourceIdentity e. A condição ativada sts:SourceIdentity permite somente as sessões que o ACM estabelece para o ACME:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "acm-acme.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession", "sts:SetSourceIdentity" ], "Condition": { "StringLikeIfExists": { "sts:SourceIdentity": "acm-acme-*" } } } ] }

Para obter o nome da sessão da função, a identidade de origem e os valores da tag de sessão definidos pelo ACM, consulteIAM para automação de certificados ACME.

Permissões

A função precisa acm:RequestCertificate (para emissão) ou acm:RevokeCertificate (para revogação), ou ambas. Essas são as mesmas permissões e chaves de condição usadas com as APIs padrão do ACM. Para obter mais informações, consulte Usar chaves de condição com o ACM.

PassRole

O administrador que cria o EAB precisa de iam:PassRole permissão para a função.

Para obter exemplos completos de políticas do IAM, consulteIAM para automação de certificados ACME.

Como a função EAB é usada

Quando um cliente ACME emite ou revoga um certificado, o ACM usa a função do IAM associada ao EAB do cliente para autorizar a operação. Como a emissão e a revogação são executadas sob essa função, a ACME se comporta como a API padrão do ACM:

  • As mesmas políticas e chaves de condição do IAM que você usa para chamadas diretas à API do ACM se aplicam à emissão e revogação da ACME.

  • AWS As Políticas de Controle de Serviços (SCPs) da Organização são aplicadas no momento da emissão.

  • As operações de emissão e revogação são registradas em. CloudTrail

  • O ACM define um nome de sessão de função e uma identidade de origem (e tags de sessão) quando assume a função, que você pode referenciar com as chaves de sts:SourceIdentity condição sts:RoleSessionName e na política de confiança da função. Para os valores que o ACM usa, consulteIAM para automação de certificados ACME.

Recuperação de credenciais

Depois de criar um EAB, recupere suas credenciais usando. GetAcmeExternalAccountBindingCredentials Isso retorna:

  • ID da chave: um identificador exclusivo para o EAB (usado como kid no ACME EAB).

  • Chave MAC: uma chave secreta usada para criar a assinatura HMAC durante o registro da conta (usada comohmacKey).

Importante

Trate a chave MAC como um segredo. Distribua-o somente para os clientes ACME que você autoriza a usar o endpoint.

Expiração opcional

Você pode configurar uma expiração para as credenciais do EAB:

  • Valor: um número inteiro positivo.

  • Tipo:MINUTES,HOURS, ouDAYS.

Se as credenciais não forem usadas antes da expiração, elas se tornarão inválidas. Se nenhuma expiração for definida, as credenciais permanecerão válidas até que o EAB seja revogado ou excluído.

Ciclo de vida das contas EAB e ACME

Depois que um cliente ACME registra uma conta usando as credenciais do EAB, a conta ACME e o EAB têm ciclos de vida independentes:

  • A revogação de um EAB não afeta as contas existentes da ACME criadas com ele.

  • A exclusão de um EAB não desativa contas.

  • Uma conta ACME pode continuar emitindo certificados após a revogação do EAB de origem.

nota

Para impedir que uma conta ACME emita mais certificados, gerencie a conta diretamente. Você pode revogar a conta com a RevokeAcmeAccount API ou o titular da conta pode desativá-la por meio do protocolo ACME.

Criação de uma vinculação de conta externa

Você pode criar um EAB usando o console do ACM ou a CLI AWS .

Para criar um EAB (console)

  1. Faça login no console AWS de gerenciamento e abra o console do ACM.

  2. No painel de navegação esquerdo, em ACME, escolha Endpoints.

  3. Selecione o endpoint.

  4. Escolha a guia Vinculações de contas externas.

  5. Escolha Criar vinculação de conta externa.

  6. Para a função do IAM, insira ou selecione o ARN da função. A função deve ter a política de confiança correta.

  7. (Opcional) Configure uma expiração para as credenciais.

  8. (Opcional) Em Tags, adicione uma ou mais tags à associação externa da conta.

  9. Escolha Criar.

  10. Copie o ID da chave e a chave MAC.

Importante

Trate a chave MAC como um segredo. Você pode recuperar o identificador da chave e a chave MAC novamente a qualquer momento GetAcmeExternalAccountBindingCredentials ligando.

Para criar um EAB (AWS CLI)

Execute o comando a seguir para criar um EAB:

aws acm create-acme-external-account-binding \ --acme-endpoint-arn arn:aws:acm:region:111122223333:acme-endpoint/00000000-0000-0000-0000-000000000000 \ --role-arn arn:aws:iam::111122223333:role/AcmeIssuanceRole \ --expiration '{"Value": 7, "Type": "DAYS"}'

Em seguida, recupere as credenciais:

aws acm get-acme-external-account-binding-credentials \ --acme-external-account-binding-arn arn:aws:acm:region:111122223333:acme-endpoint/00000000-0000-0000-0000-000000000000/acme-external-account-binding/22222222-2222-2222-2222-222222222222

A resposta contém o identificador da chave e a chave MAC que você fornece ao cliente ACME. Você pode recuperar essas credenciais novamente a qualquer momento ligando. GetAcmeExternalAccountBindingCredentials

{ "KeyId": "e06b7974-a684-4cc2-b4b1-1fd87ac81baa", "MacKey": "txvweHF1-COvXAKNlGk-58SX6ZVzEaaXaBPrwNAKCTo" }

Gerenciando vinculações de contas externas

Você pode realizar as seguintes operações de gerenciamento nos EABs:

Descrever

Veja os detalhes do EAB, incluindo ARN da função, expiração, hora de criação e último uso.

Lista

Veja todos os EABs de um endpoint.

Revogar

Invalide as credenciais do EAB. Isso não afeta as contas ACME existentes criadas com o EAB. Para gerenciar essas contas, revogue-as com a RevokeAcmeAccount API ou faça com que o titular da conta as desative por meio do protocolo ACME.

Delete

Remova completamente o recurso EAB. Todas as contas ACME já registradas no EAB continuam existindo; a exclusão do EAB apenas impede que novas contas ACME sejam registradas nele.