You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为AWS Amplify用户分配单个应用访问权限?角色与用户解析

为指定用户授予单个AWS Amplify应用访问权限及权限机制解析

一、实操步骤

1. 编写自定义IAM权限策略

  • 登录AWS控制台,进入IAM服务的「策略」页面,点击「创建策略」
  • 切换到「JSON」编辑模式,替换下方代码中的your-amplify-app-id(目标应用的ID,可在Amplify应用详情页找到)和your-aws-account-id(你的AWS账户ID):
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "amplify:GetApp",
                "amplify:GetBranch",
                "amplify:GetDeployment",
                "amplify:GetDomainAssociation",
                "amplify:GetJob",
                "amplify:ListBranches",
                "amplify:ListDomainAssociations",
                "amplify:ListJobs",
                "amplify:ListTagsForResource"
            ],
            "Resource": "arn:aws:amplify:us-east-1:your-aws-account-id:apps/your-amplify-app-id"
        },
        {
            "Effect": "Allow",
            "Action": "amplify:ListApps",
            "Resource": "*"
        }
    ]
}
  • 给策略起个直观的名字(比如Amplify-OnlyAppX-Access),添加简短描述后完成创建

2. 把策略绑定到目标用户

  • 进入IAM「用户」页面,找到要授权的用户,进入其详情页
  • 切换到「权限」标签,点击「添加权限」→「附加现有策略直接」
  • 搜索刚才创建的自定义策略,勾选后确认关联

3. 验证权限效果

  • 用该测试用户登录AWS控制台,进入Amplify服务页面:应该只能看到你指定的那一个应用,且只能执行策略里允许的操作(比如查看分支、部署记录,不能删除应用或修改全局设置)

二、Amplify角色与用户权限机制拆解

1. IAM用户 vs IAM角色

  • IAM用户:是给具体人员或固定服务创建的身份实体,有专属的访问密钥(如果启用),权限直接通过策略绑定,适合长期使用的个人账号
  • IAM角色:无固定凭证的临时权限集合,需要被用户或服务主动「扮演」才能获取权限,多用于跨账户访问、EC2实例权限、Amplify服务自身调用其他AWS资源(比如拉取S3静态文件、触发Lambda)的场景

2. Amplify权限的核心逻辑

Amplify的所有控制台操作都对应IAM中的amplify:*动作,权限控制完全依赖IAM策略的两个核心要素:

  • Action:定义允许/禁止的具体操作(比如GetApp是查看应用详情,ListBranches是列出分支)
  • Resource:限定操作的范围——指定单个应用的ARN就能把权限锁死在该应用上;保留amplify:ListApps的全局权限是因为Amplify控制台需要先加载应用列表,才能展示用户有权访问的应用

3. 根用户的最佳实践

根用户拥有账户内所有资源的最高权限,绝对不要共享根用户凭证,也不要给根用户附加任何自定义策略。所有权限分配都应该通过IAM用户/角色来实现,遵循「最小必要权限」原则——只给用户完成工作所需的最少权限,降低安全风险

内容的提问来源于stack exchange,提问作者User

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 01:25:15