A company uses Amazon S3 to store data and Amazon QuickSight to create visualizations.
The company has an S3 bucket in an AWS account named Hub-Account. The S3 bucket is encrypted by an AWS Key Management Service (AWS KMS) key. The company's QuickSight instance is in a separate account named BI-Account
The company updates the S3 bucket policy to grant access to the QuickSight service role. The company wants to enable cross-account access to allow QuickSight to interact with the S3 bucket.
Which combination of steps will meet this requirement? (Select TWO.)
Problem Analysis:
The company needs cross-account access to allow QuickSight in BI-Account to interact with an S3 bucket in Hub-Account.
The bucket is encrypted with an AWS KMS key.
Appropriate permissions must be set for both S3 access and KMS decryption.
Key Considerations:
QuickSight requires IAM permissions to access S3 data and decrypt files using the KMS key.
Both S3 and KMS permissions need to be properly configured across accounts.
Solution Analysis:
Option A: Use Existing KMS Key for Encryption
While the existing KMS key is used for encryption, it must also grant decryption permissions to QuickSight.
Option B: Add S3 Bucket to QuickSight Role
Granting S3 bucket access to the QuickSight service role is necessary for cross-account access.
Option C: AWS RAM for Bucket Sharing
AWS RAM is not required; bucket policies and IAM roles suffice for granting cross-account access.
Option D: IAM Policy for KMS Access
QuickSight's service role in BI-Account needs explicit permissions to use the KMS key for decryption.
Option E: Add KMS Key as Resource for Role
The KMS key must explicitly list the QuickSight role as an entity that can access it.
Implementation Steps:
S3 Bucket Policy in Hub-Account: Add a policy to the S3 bucket granting the QuickSight service role access:
json
{
'Version': '2012-10-17',
'Statement': [
{
'Effect': 'Allow',
'Principal': { 'AWS': 'arn:aws:iam::<BI-Account-ID>:role/service-role/QuickSightRole' },
'Action': 's3:GetObject',
'Resource': 'arn:aws:s3:::<Bucket-Name>/*'
}
]
}
KMS Key Policy in Hub-Account: Add permissions for the QuickSight role:
{
'Version': '2012-10-17',
'Statement': [
{
'Effect': 'Allow',
'Principal': { 'AWS': 'arn:aws:iam::<BI-Account-ID>:role/service-role/QuickSightRole' },
'Action': [
'kms:Decrypt',
'kms:DescribeKey'
],
'Resource': '*'
}
]
}
IAM Policy for QuickSight Role in BI-Account: Attach the following policy to the QuickSight service role:
{
'Version': '2012-10-17',
'Statement': [
{
'Effect': 'Allow',
'Action': [
's3:GetObject',
'kms:Decrypt'
],
'Resource': [
'arn:aws:s3:::<Bucket-Name>/*',
'arn:aws:kms:<region>:<Hub-Account-ID>:key/<KMS-Key-ID>'
]
}
]
}
Emogene
1 month agoVivan
2 months agoElvera
2 months agoTamesha
2 months agoMila
2 months agoDottie
2 months agoGracie
3 months agoHan
3 months agoMona
3 months agoDortha
3 months agoChaya
3 months agoLatosha
4 months agoHaydee
4 months agoGlendora
4 months agoDino
4 months agoAudry
4 months agoSabra
5 months agoKristian
5 months agoMarsha
5 months agoLauran
11 months agoDell
11 months agoJaclyn
11 months agoFidelia
11 months agoAmalia
9 months agoNadine
9 months agoAshton
9 months agoElvis
10 months agoLauran
11 months agoMa
11 months agoBong
11 months agoTarra
11 months agoAja
11 months agoSharen
11 months agoMable
12 months agoMi
11 months agoJina
11 months agoCatarina
11 months ago