Saltar al contenido

¿Por qué recibo un error de permiso GetBucketAcl de Amazon S3 cuando actualizo mi configuración de AWS Private CA CRL?

3 minutos de lectura
0

He actualizado mi autoridad certificadora privada de AWS (AWS Private CA) para configurar una lista de revocación de certificados (CRL). Sin embargo, recibí el error «La entidad principal de servicio de ACM Private CA 'acm-pca.amazonaws.com' requiere permisos 's3:GetBucketAcl'».

Descripción corta

AWS Private CA coloca la CRL en un bucket de Amazon Simple Storage Service (Amazon S3) que designes para su uso. El bucket de Amazon S3 debe estar protegido mediante una política de permisos adjunta. Los usuarios autorizados y las entidades principales de servicio requieren el permiso Put para permitir a AWS Private CA colocar objetos en el bucket y obtener permiso para recuperarlos. Para obtener más información, consulta las políticas de acceso para las CRL en Amazon S3.

Resolución

Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de la AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.

Para reemplazar la política predeterminada de Amazon S3 por una política menos permisiva, sigue estos pasos:

  1. Abre la consola de Amazon S3.

  2. En la lista de buckets, abre el bucket en el que quieras colocar la CRL.

  3. Selecciona la pestaña Permisos.

  4. En Política de bucket, selecciona Editar.

  5. En Política, copia y pega la siguiente política:

    {
      "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:::your-crl-storage-bucket/*",
            "arn:aws:s3:::your-crl-storage-bucket"
          ],
          "Condition": {
            "StringEquals": {
              "aws:SourceAccount": "account",
              "aws:SourceArn": "arn:partition:acm-pca:region:account:certificate-authority/CA_ID"
            }
          }
        }
      ]
    }

    Nota: Sustituye el valor de Resource por el nombre de tu bucket de Amazon S3. Sustituye el valor de aws:SourceAccount por tu ID de cuenta. Sustituye el valor de aws:SourceArn por tu ARN.

  6. Selecciona Guardar cambios.

  7. Cifra tus CRL.

  8. Ejecuta el comandoupdate-certificate-authority para actualizar la configuración de revocación de AWS Private CA:

    aws acm-pca update-certificate-authority --certificate-authority-arn Certification_Auhtority_ARN --revocation-configuration file://revoke_config.txt

    **Nota:**Sustituye Certification_Auhtority_ARN por tu ARN.
    El archivo revoke_config.txt contiene información de revocación similar a la siguiente:

    {    "CrlConfiguration": {
            "Enabled": <true>,
            "ExpirationInDays": <7>,
            "CustomCname": "example1234.cloudfront.net",
            "S3BucketName": "example-test-crl-bucket-us-east-1",
            "S3ObjectAcl": "BUCKET_OWNER_FULL_CONTROL"
        }
    }

Nota:

  • Si has desactivado la característica Bloquear acceso público (BPA) en Amazon S3, puedes especificar BUCKET_OWNER_FULL_CONTROL o PUBLIC_READ como valor.
  • Si utilizas la Consola de administración de AWS para configurar la CRL, es posible que recibas el error «ValidationException». Repite el paso 8 para actualizar la configuración de revocación de CA a través de la AWS CLI.

Información relacionada

Habilitación de Bloquear acceso público (BPA) de S3 con CloudFront

Prácticas recomendadas de seguridad para Amazon S3

GetBucketAcl

OFICIAL DE AWSActualizada hace un año