Usar relatórios de auditoria com sua CA privada - AWS Private Certificate Authority

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á.

Usar relatórios de auditoria com sua CA privada

Você pode criar um relatório de auditoria para listar todos os certificados que sua CA privada emitiu ou revogou. O relatório é salvo em um bucket do S3 novo ou existente que você especifica na entrada.

Para obter informações sobre como adicionar proteção de criptografia aos relatórios de auditoria, consulte Criptografar relatórios de auditoria .

O arquivo do relatório de auditoria tem o seguinte caminho e nome de arquivo. O ARN de um bucket do Amazon S3 é o valor para bucket-name, CA_ID é o identificador exclusivo de uma CA emissora. UUID é o identificador exclusivo de um relatório de auditoria.

bucket-name/audit-report/CA_ID/UUID.[json|csv]

Você pode gerar um novo relatório a cada 30 minutos e fazer download do bucket. O exemplo a seguir mostra um relatório separado por CSV.

awsAccountId,requestedByServicePrincipal,certificateArn,serial,subject,notBefore,notAfter,issuedAt,revokedAt,revocationReason,templateArn 123456789012,,arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID,00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff,"2.5.4.5=#012345678901,2.5.4.44=#0a1b3c4d,2.5.4.65=#0a1b3c4e5f6a,2.5.4.43=#0a1b3c4d5e,2.5.4.42=#0123456789abcdef0123456789abcdef0123,2.5.4.4=#0123456789abcdef01234567,2.5.4.12=#0a1b3c4d5e,2.5.4.46=#0123456789ab,CN=www.example1.com,OU=Sales,O=Example Company,L=Seattle,ST=Washington,C=US",2020-03-02T21:43:57+0000,2020-04-07T22:43:57+0000,2020-03-02T22:43:58+0000,,UNSPECIFIED,arn:aws:acm-pca:::template/EndEntityCertificate/V1 123456789012,acm.amazonaws.com,arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID,ff:ee:dd:cc:bb:aa:99:88:77:66:55:44:33:22:11:00,"2.5.4.5=#012345678901,2.5.4.44=#0a1b3c4d,2.5.4.65=#0a1b3c4d5e6f,2.5.4.43=#0a1b3c4d5e,2.5.4.42=#0123456789abcdef0123456789abcdef0123,2.5.4.4=#0123456789abcdef01234567,2.5.4.12=#0a1b3c4d5e,2.5.4.46=#0123456789ab,CN=www.example1.com,OU=Sales,O=Example Company,L=Seattle,ST=Washington,C=US",2020-03-02T20:53:39+0000,2020-04-07T21:53:39+0000,2020-03-02T21:53:40+0000,,,arn:aws:acm-pca:::template/EndEntityCertificate/V1

O exemplo a seguir mostra um relatório formatado em JSON.

[ { "awsAccountId":"123456789012", "certificateArn":"arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID", "serial":"00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff", "subject":"2.5.4.5=#012345678901,2.5.4.44=#0a1b3c4d,2.5.4.65=#0a1b3c4d5e6f,2.5.4.43=#0a1b3c4d5e,2.5.4.42=#0123456789abcdef0123456789abcdef0123,2.5.4.4=#0123456789abcdef01234567,2.5.4.12=#0a1b3c4d5e,2.5.4.46=#0123456789ab,CN=www.example1.com,OU=Sales,O=Example Company,L=Seattle,ST=Washington,C=US", "notBefore":"2020-02-26T18:39:57+0000", "notAfter":"2021-02-26T19:39:57+0000", "issuedAt":"2020-02-26T19:39:58+0000", "revokedAt":"2020-02-26T20:00:36+0000", "revocationReason":"UNSPECIFIED", "templateArn":"arn:aws:acm-pca:::template/EndEntityCertificate/V1" }, { "awsAccountId":"123456789012", "requestedByServicePrincipal":"acm.amazonaws.com", "certificateArn":"arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID", "serial":"ff:ee:dd:cc:bb:aa:99:88:77:66:55:44:33:22:11:00", "subject":"2.5.4.5=#012345678901,2.5.4.44=#0a1b3c4d,2.5.4.65=#0a1b3c4d5e6f,2.5.4.43=#0a1b3c4d5e,2.5.4.42=#0123456789abcdef0123456789abcdef0123,2.5.4.4=#0123456789abcdef01234567,2.5.4.12=#0a1b3c4d5e,2.5.4.46=#0123456789ab,CN=www.example1.com,OU=Sales,O=Example Company,L=Seattle,ST=Washington,C=US", "notBefore":"2020-01-22T20:10:49+0000", "notAfter":"2021-01-17T21:10:49+0000", "issuedAt":"2020-01-22T21:10:49+0000", "templateArn":"arn:aws:acm-pca:::template/EndEntityCertificate/V1" } ]
nota

Quando AWS Certificate Manager renova um certificado, o relatório de auditoria privado da CA preenche o requestedByServicePrincipal campo com. acm.amazonaws.com Isso indica que o AWS Certificate Manager serviço convocou a IssueCertificate ação da CA privada da AWS API em nome de um cliente para renovar o certificado.

Preparar um bucket do Amazon S3 para relatórios de auditoria

Para armazenar relatórios de auditoria, é necessário preparar um bucket do Amazon S3. Para obter mais informações, consulte Como criar um bucket do S3?

Seu bucket do S3 deve ser protegido por uma política de permissões anexada. Usuários autorizados e diretores de serviços precisam de Put permissão CA privada da AWS para colocar objetos no bucket e Get permissão para recuperá-los. Recomendamos que você aplique a política mostrada abaixo, que restringe o acesso a uma conta da AWS e ao ARN de uma CA privada. Para obter mais informações, consulte Adicionar uma política de bucket usando o console do Amazon S3.

nota

Durante o procedimento do console para criar um relatório de auditoria, você pode optar por deixar CA privada da AWS criar um novo bucket e aplicar uma política de permissões padrão. A política padrão não aplica restrição de SourceArn à CA e, portanto, é mais permissiva que a política recomendada. Se você escolher a política padrão, sempre poderá modificá-la posteriormente.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"acm-pca.amazonaws.com" }, "Action":[ "s3:PutObject", "s3:PutObjectAcl", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource":[ "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*", "arn:aws:s3:::DOC-EXAMPLE-BUCKET" ], "Condition":{ "StringEquals":{ "aws:SourceAccount":"account", "aws:SourceArn":"arn:partition:acm-pca:region:account:certificate-authority/CA_ID" } } } ] }

Criar um relatório de auditoria

É possível criar um relatório de auditoria do console ou da AWS CLI.

Como criar um relatório de auditoria (console)
  1. Faça login na sua AWS conta e abra o CA privada da AWS console em https://console.aws.amazon.com/acm-pca/home.

  2. Na página Autoridades de certificação privadas, escolha sua CA privada na lista.

  3. No menu Ações, selecione Gerar relatório de auditoria.

  4. Em Destino do relatório de auditoria, para Criar um novo bucket do S3?, escolha Sim e digite um nome de bucket exclusivo ou escolha Não e escolha um bucket existente na lista.

    Se você escolher Sim, CA privada da AWS cria e anexa a política padrão ao seu bucket. Caso selecione No (Não), você deverá anexar uma política ao bucket antes de gerar um relatório de auditoria. Use o padrão de política descrito em Preparar um bucket do Amazon S3 para relatórios de auditoria. Para obter informações sobre como anexar uma política, consulte Adicionar uma política de bucket usando o console do Amazon S3

  5. Em Formato de saída, escolha JSON para notação de JavaScript objeto ou CSV para valores separados por vírgula.

  6. Selecione Generate audit report (Gerar relatório de auditoria).

Como criar um relatório de auditoria (AWS CLI)
  1. Se você ainda não tiver um bucket do S3 para usar, crie um.

  2. Anexe uma política ao bucket. Use o padrão de política descrito em Preparar um bucket do Amazon S3 para relatórios de auditoria. Para obter informações sobre como anexar uma política, consulte Adicionar uma política de bucket usando o console do Amazon S3

  3. Use o comando create-certificate-authority-audit-report para criar o relatório de auditoria e colocá-lo no bucket S3 preparado.

    $ aws acm-pca create-certificate-authority-audit-report \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/11223344-1234-1122-2233-112233445566 \ --s3-bucket-name bucket_name \ --audit-report-response-format JSON

Recuperar um relatório de auditoria

Para recuperar um relatório de auditoria para inspeção, use o console do Amazon S3, a API, a CLI ou o SDK. Para ter mais informações, consulte Baixar um objeto no Guia do usuário do Amazon Simple Storage Service.

Criptografar relatórios de auditoria

Opcionalmente, você pode configurar a criptografia no bucket do Amazon S3 contendo seus relatórios de auditoria. CA privada da AWS suporta dois modos de criptografia para ativos no S3:

  • Criptografia automática no lado do servidor com chaves AES-256 gerenciadas pelo Amazon S3.

  • Criptografia gerenciada pelo cliente usando AWS Key Management Service e AWS KMS key configurada de acordo com suas especificações.

nota

CA privada da AWS não suporta o uso de chaves KMS padrão geradas automaticamente pelo S3.

Os procedimentos a seguir descrevem como configurar cada uma das opções de criptografia.

Como configurar uma criptografia automática

Siga as etapas para habilitar a criptografia do servidor do S3.

  1. Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

  2. Na tabela Buckets, escolha o bucket que conterá seus CA privada da AWS ativos.

  3. Na página do bucket, escolha a guia Propriedades.

  4. Escolha o cartão Criptografia padrão.

  5. Escolha Habilitar.

  6. Escolh Chave do Amazon S3 (SSE-S3).

  7. Escolha Salvar alterações.

Como configurar a criptografia personalizada

Siga as etapas para habilitar a criptografia usando uma chave personalizada.

  1. Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

  2. Na tabela Buckets, escolha o bucket que conterá seus CA privada da AWS ativos.

  3. Na página do bucket, escolha a guia Propriedades.

  4. Escolha o cartão Criptografia padrão.

  5. Escolha Habilitar.

  6. Escolha a AWS Key Management Service chave (SSE-KMS).

  7. Escolha Escolher entre suas AWS KMS chaves ou Inserir AWS KMS key ARN.

  8. Escolha Salvar alterações.

  9. (Opcional) Se ainda não tiver uma chave KMS, crie uma usando o seguinte comando da AWS CLI create-key:

    $ aws kms create-key

    A saída contém o ID de chave e o nome do recurso da Amazon (ARN) da chave do KMS. Veja a seguir um exemplo de saída:

    { "KeyMetadata": { "KeyId": "01234567-89ab-cdef-0123-456789abcdef", "Description": "", "Enabled": true, "KeyUsage": "ENCRYPT_DECRYPT", "KeyState": "Enabled", "CreationDate": 1478910250.94, "Arn": "arn:aws:kms:us-west-2:123456789012:key/01234567-89ab-cdef-0123-456789abcdef", "AWSAccountId": "123456789012" } }
  10. Usando as etapas a seguir, você concede permissão ao responsável pelo CA privada da AWS serviço para usar a chave KMS. Por padrão, todas as chaves do KMS são privadas; somente o proprietário do recurso pode usá-las para criptografar e descriptografar dados. No entanto, o proprietário do recurso pode conceder permissões para acessar a chave do KMS a outros usuários e recursos. A entidade principal desse serviço deve estar na mesma região em que a chave do KMS está armazenada.

    1. Primeiro, salve a política padrão para sua chave KMS policy.json usando o seguinte get-key-policycomando:

      $ aws kms get-key-policy --key-id key-id --policy-name default --output text > ./policy.json
    2. Abra o arquivo policy.json em um editor de textos. Selecione uma das declarações de políticas a seguir e adicione-a à política existente.

      Se a sua chave de bucket do Amazon S3 estiver habilitada, use a seguinte declaração:

      { "Sid":"Allow ACM-PCA use of the key", "Effect":"Allow", "Principal":{ "Service":"acm-pca.amazonaws.com" }, "Action":[ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource":"*", "Condition":{ "StringLike":{ "kms:EncryptionContext:aws:s3:arn":"arn:aws:s3:::bucket-name" } } }

      Se a sua chave de bucket do Amazon S3 estiver desabilitada, use a seguinte declaração:

      { "Sid":"Allow ACM-PCA use of the key", "Effect":"Allow", "Principal":{ "Service":"acm-pca.amazonaws.com" }, "Action":[ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource":"*", "Condition":{ "StringLike":{ "kms:EncryptionContext:aws:s3:arn":[ "arn:aws:s3:::bucket-name/acm-pca-permission-test-key", "arn:aws:s3:::bucket-name/acm-pca-permission-test-key-private", "arn:aws:s3:::bucket-name/audit-report/*", "arn:aws:s3:::bucket-name/crl/*" ] } } }
    3. Por fim, aplique a política atualizada usando o seguinte put-key-policycomando:

      $ aws kms put-key-policy --key-id key_id --policy-name default --policy file://policy.json