QuestionQ209

Data Security and Governance

A company is developing a data-stream processing application. The application runs in an Amazon Elastic Kubernetes Service (Amazon EKS) cluster, and it stores processed data in an Amazon DynamoDB table.

The company requires the application containers in the EKS cluster to securely access the DynamoDB table without embedding AWS credentials in the containers.

Which solution meets these requirements?

  • A Store the AWS credentials in an Amazon S3 bucket. Grant the EKS containers access to the S3 bucket to retrieve the credentials.
  • B Attach an IAM role to the EKS worker nodes, Grant the IAM role access to DynamoDUse the IAM role to set up IAM roles service accounts (IRSA) functionality.
  • C Create an IAM user that has an access key to access the DynamoDB table. Use environment variables in the EKS containers to store the IAM user access key data.
  • D Create an IAM user that has an access key to access the DynamoDB table. Use Kubernetes secrets that are mounted in a volume of the EKS duster nodes to store the user access key data.
Explanation

IAM roles for service accounts (IRSA) associates an IAM role that grants DynamoDB permissions with a Kubernetes service account used by the Pods. The containers receive temporary role credentials through the EKS/IAM integration, avoiding embedded or stored long-term AWS access keys.

Learn more

Community Discussion

No comments yet. Be the first to start the discussion!