AWS - S3 - 创建存储桶策略 - 错误:访问被拒绝

0

【以下的问题经过翻译处理】 尝试创建 Amazon Web Services - S3 存储桶策略,但在运行脚本时出现以下错误。我的访问到底在哪里被拒绝?这个问题是否与我如何设置 aws configure 有关

追溯(最近一次溯源):

File "C:\Users*****\githubb\aws\s3operations.py", line 40, in <module> print(create_bucket_policy()) File "C:\Users\Patrick\githubb\aws\s3operations.py", line 36, in create_bucket_policy Policy=policy_string File "C:\Users\Patrick\Python36\lib\site-packages\botocore\client.py", line 357, in _api_call return self._make_api_call(operation_name, kwargs) File "C:\Users\Patrick\Python36\lib\site-packages\botocore\client.py", line 661, in _make_api_call raise error_class(parsed_response, operation_name) botocore.exceptions.ClientError: An error occur

red (AccessDenied) when calling the PutBucketPolicy operation: Access Denied

以下是我的脚本:

import boto3 import json

BUCKET_NAME ='patricksbucket'

def s3_client(): s3 = boto3.client('s3') """:type : pyboto3.s3""" return s3

def create_bucket(bucket_name): return s3_client().create_bucket( Bucket=bucket_name, CreateBucketConfiguration={ 'LocationConstraint': 'us-east-2' } )

def create_bucket_policy(): bucket_policy = { "Vesrion": "2012-10-17", "Statement":[ { "Sid": "AddPerm", "Effect": "Allow", "Principal": "", "Action":["s3:"], "Resource":["arn:aws:s3:::patricksbucket/*"] } ] } policy_string = json.dumps(bucket_policy)

return s3_client().put_bucket_policy(
Bucket=BUCKET_NAME,
Policy=policy_string
)

profile picture
EXPERTE
gefragt vor 10 Monaten62 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 它可能由于多种原因而发生,但主要与您的凭据或策略有关。无论如何,您只需遵循权限规范,如我在您的代码中看到的那样,说明如何使用通配符授予所有内容

来自 Amazon Docs 的示例可以说明问题

"Action": "*"  
"Action": "s3:*"  

除上述原因外,另一个原因是您的凭据。例如,如果您使用 AWS CLI

$ aws configure  
AWS Access Key ID \[None]: AKIAIOSFODNN7EXAMPLE  
AWS Secret Access Key \[None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY  
Default region name \[None]: us-west-2  
Default output format \[None]: json

profile picture
EXPERTE
beantwortet vor 10 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen