s3 get_object 拒绝访问 SSE-KMS 加密对象
s3 get_object giving Access Denied for SSE-KMS Encrypted Object
我正在尝试使用以下代码在 lambda 函数中获取 s3 加密对象,但我收到获取对象的访问被拒绝错误。
s3 = boto3.client('s3')
response = s3.get_object(Bucket=bucket, Key=key)
我为 lambda 分配了一个 ole,我在其中提供了 kms 策略。
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": "arn:aws:kms:ZONE:123456789012:key/ererwerwerwerer"
}
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "*"
}
任何人都可以告诉我我在这里缺少什么
您缺少访问 S3 的策略,请确保更新 S3 存储桶以允许访问 Lambda 函数。
我缺少 KMS 密钥策略中的 lambda 函数角色。
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::123456789012:role/xyz-lbz-lamda-role",
"arn:aws:iam::123456789012:root"
]
},
"Action": "kms:*",
"Resource": "*"
}
我正在尝试使用以下代码在 lambda 函数中获取 s3 加密对象,但我收到获取对象的访问被拒绝错误。
s3 = boto3.client('s3')
response = s3.get_object(Bucket=bucket, Key=key)
我为 lambda 分配了一个 ole,我在其中提供了 kms 策略。
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": "arn:aws:kms:ZONE:123456789012:key/ererwerwerwerer"
}
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "*"
}
任何人都可以告诉我我在这里缺少什么
您缺少访问 S3 的策略,请确保更新 S3 存储桶以允许访问 Lambda 函数。
我缺少 KMS 密钥策略中的 lambda 函数角色。
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::123456789012:role/xyz-lbz-lamda-role",
"arn:aws:iam::123456789012:root"
]
},
"Action": "kms:*",
"Resource": "*"
}