Gan*_*ute 5 amazon-s3 amazon-web-services amazon-iam serverless-framework
我正在尝试创建一个无服务器项目,该项目将部署CloudFormation,并作为其一部分尝试创建S3存储桶。但这由于以下错误而失败:
15:23:25 UTC+0550 CREATE_FAILED AWS::S3::Bucket ServerlessDeploymentBucket API: s3:CreateBucket Access Denied
15:23:24 UTC+0550 CREATE_IN_PROGRESS AWS::S3::Bucket ServerlessDeploymentBucket
Run Code Online (Sandbox Code Playgroud)
我尝试使用aws s3api create-bucket --bucket my-bucket --region us-west-2成功创建存储区的命令创建S3 存储区。我不确定为什么通过无服务器创建S3存储桶时会拒绝访问。这里可能是什么问题?
这是我的serverless.yml档案
service: auth-service-gs
provider:
name: aws
runtime: python2.7
stage: dev2-gs-1
region: us-west-2
profile: mfa
environment:
DB_HOST: "DB_HOST"
DB_USER: "root"
DB_PASS: "<password>"
LOG_LEVEL: "DEBUG"
functions:
login:
handler: handler.login
events:
- http:
path: /api/v1/login
method: post
cors: true
Run Code Online (Sandbox Code Playgroud)
我$serverless deploy
还会使用的内容来部署服务~/.aws/credentials
[mfa]
aws_access_key_id = <ACESS_KEY>
aws_secret_access_key = <SECRET_KEY>
aws_session_token = <SESSION ID>
Run Code Online (Sandbox Code Playgroud)
我通过跑步得到的
$ aws sts get-session-token --serial-number arn:aws:iam::<number>:mfa/<username> --token-code 123456
您的流程角色将需要角色或用户级别的 IAM 权限,具体取决于您的实施。
假设您希望进程创建并拥有存储桶的所有权限,您将需要如下内容:
{
"Statement": [
{
"Action": "s3:*",
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::my-bucket",
"arn:aws:s3:::my-bucket/*"
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2638 次 |
| 最近记录: |