簡體   English   中英

Boto3:具有有限權限的 aws 憑據

[英]Boto3: aws credentials with limited permissions

我配置了一些 AWS 密鑰。 這些鍵使我可以訪問 s3 存儲桶中的某些目錄。 我想使用boto3與暴露給我的目錄進行交互,但是似乎我實際上根本無法對存儲桶執行任何操作,因為我無法訪問整個存儲桶。

這從我的終端對我有用:

aws s3 ls s3://the_bucket/and/this/specific/path/

但如果我這樣做:

aws s3 ls s3://the_bucket/

我得到:

調用 ListObjects 操作時發生錯誤 (AccessDenied):拒絕訪問

當我嘗試通過boto3訪問目錄時也會發生這種情況。

session = boto3.Session(profile_name=my_creds)
client=session.client('s3')
list_of_objects = client.list_objects(Bucket='the_bucket', Prefix='and/this/specific/path', Delimiter='/')

我是否需要請求訪問整個存儲桶才能使用boto3

您需要設置此存儲桶策略:

{
  "Sid": "<SID>",
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::<account>:user/<user_name>"
  },
  "Action": [
    "s3:GetBucketLocation",
    "s3:ListBucket"
  ],
  "Resource": "arn:aws:s3:::<bucket_name>"
}

有關在策略中指定權限的更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM