Into :我是AWS的新手,因此任何帮助都将不胜感激
目标:我正在尝试使用AWS在我的Web应用程序上实现两个不同的角色,该角色使用IAM角色访问其他网页(通过S3桶)
我做了什么:
1-我已经构建了一个在AWS弹性beanstalk上托管的前端应用程序
2-应用程序使用AWS Cognito进行身份验证。
3-我已将AWS Cognito与AWS Cognito联合身份集成在一起,以为每个用户创建身份。
4-我在AWS Cognito
中创建了一个名为Admin的组5-我已经为管理员组分配了一个新的管理员IAM角色
6-我添加了访问AWS S3的角色的内联策略。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1513036814609",
"Action": "s3:*",
"Effect": "Allow",
"Resource": "arn:aws:s3:::opaladminpage"
}
]
}
7-我创建了一个s3bucket
8-我上传了一个1页静态网站
9-我已将这些S3策略添加到我的存储桶
{
"Id": "Policy1513079053770",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1513079052595",
"Action": "s3:*",
"Effect": "Allow",
"Resource": "arn:aws:s3:::opaladminpage",
"Principal": {
"AWS": [
"arn:aws:iam::381145069197:role/SASPortalAdministrator"
]
}
}
]
}
10-我在我的前端申请中添加了一个URL链接到我的1页静态网站错误信息:当我单击应用程序中的链接时,我会收到此错误消息?
403 Forbidden
• Code: AccessDenied
• Message: Access Denied
• RequestId: 434343543535GFGFGFGF
• HostId:citytytTTYTYTUTUT
"Resource": [
"arn:aws:s3:::mybucket",
"arn:aws:s3:::mybucket/*"
]
第一个资源适用于存储桶上的操作,第二个资源适用于存储桶中对象的操作。
另外,不要将s3:*
作为您的操作,因为其中包括所有内容,包括删除对象,甚至包括存储桶本身。您需要确定必要的实际权限。