After changing an S3 bucket used for training data from SSE-S3 to SSE-KMS, SageMaker training jobs begin failing with AccessDenied errors. The engineer made no other configuration changes. What should the engineer do to fix the failures?
Choose an answer
Tap an option to check your answer.
Correct answer: Update the IAM policy attached to the training jobs' execution role to include kms:Encrypt and kms:Decrypt..
Why this is the answer
When an S3 bucket's encryption changes from SSE-S3 (S3-managed keys) to SSE-KMS (AWS Key Management Service), SageMaker training jobs require explicit permissions to interact with KMS. The AccessDenied errors indicate that the execution role used by the SageMaker jobs lacks these necessary KMS permissions. Adding kms:Encrypt and kms:Decrypt to the training job's execution role allows it to use the KMS key for data encryption and decryption during training. Incorrect options: s3:ListBucket and s3:GetObject are typically already present for S3 access; the issue is with KMS, not basic S3 operations. Setting aws:SecureTransport to True in the S3 bucket policy enforces HTTPS, which is unrelated to KMS key access. kms:CreateGrant is for creating grants on KMS keys, not for encrypting or decrypting data, and the user's policy doesn't affect the training job's execution role.
Pass your exam — without the endless answer hunt
Get every verified question and explanation for this exam in one place, and save hours of prep. 1,000+ certifications · 20+ languages · free to start.
Pass your exam faster → No card needed