¿Cómo soluciono los errores al importar datos a mi Amazon SageMaker Studio con SageMaker Data Wrangler?

3 minutos de lectura
0

Recibo errores al intentar importar datos de Amazon Simple Storage Service (Amazon S3) o Amazon Athena con Amazon SageMaker Data Wrangler.

Resolución

Error de permisos de ciclo de vida

Al intentar importar datos de Amazon Athena a Data Wrangler, es posible que aparezca el siguiente error:

S3LifecyclePermissionError: You don't have permission to read expiration rules from the bucket that you specified.

Este error se produce porque el rol de ejecución de SageMaker asociado al perfil de usuario no tiene los permisos necesarios para acceder a las configuraciones del ciclo de vida de Amazon S3 a fin de administrar la retención y la caducidad de los datos.

Para resolver este error, añada la siguiente política de AWS Identity y Access Management (IAM) al rol de ejecución de SageMaker (ejemplo: AmazonSageMaker-ExecutionRole-xxxxxxxxxxxxxxx):

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "LifecycleConfig",
      "Effect": "Allow",
      "Action": [
        "s3:GetLifecycleConfiguration",
        "s3:PutLifecycleConfiguration"
      ],
      "Resource": "*"
    }
  ]
}

En Recurso, puede incluir solo los buckets específicos de la región a los que se debe acceder. GetBucketLifecycleConfiguration devuelve la información de configuración del ciclo de vida establecida en el bucket, mientras que PutBucketLifecycleConfiguration crea una nueva configuración de ciclo de vida para el bucket.

Error de acceso denegado

Es posible que aparezca el siguiente error al ejecutar un trabajo de procesamiento con una configuración de salida no cifrada.

com.amazonaws.services.s3.model.AmazonS3Exception: Access Denied

Es posible que aparezca este error por los siguientes motivos:

  • El rol de ejecución de SageMaker no tiene los permisos necesarios para realizar operaciones de S3.
  • La política de bucket de S3 o la política de punto de conexión de Amazon Virtual Private Cloud (Amazon VPC) han denegado explícitamente los permisos para PutObject. Este podría ser el caso si solo ha aplicado conexiones cifradas al bucket de S3 proporcionando una clave específica de AWS Key Management Service (AWS KMS).

Para resolver este error, haga lo siguiente:

  • Compruebe si el rol de ejecución de SageMaker tiene permisos mínimos para las operaciones del bucket de S3:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:PutObject",
        "s3:ListBucket",
        "s3:CreateBucket",
      ],
      "Resource": [
        "arn:aws:s3:::sagemaker-us-east-1-1111222233334444",
        "arn:aws:s3:::sagemaker-us-east-1-1111222233334444/*"
      ]
    }
  ]
}
  • Asegúrese de que la política de bucket de S3 o la política de puntos de conexión de VPC no denieguen explícitamente los permisos necesarios para las operaciones de S3.
  • Considere la posibilidad de pasar la clave de AWS KMS al trabajo de procesamiento que permite descifrar los objetos del bucket de S3 desde el que se importan los datos.
  • Considere la posibilidad de utilizar un bucket de S3 diferente para importar sus datos cifrados en reposo mediante el cifrado del servidor de Amazon S3.

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año