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

能否限制AWS IAM用户仅在控制台查看指定CodeCommit仓库?

如何让IAM用户仅在CodeCommit控制台看到指定仓库

可行,且不需要让用户看到所有仓库列表,以下是两种实现方案:


方案1:直接访问目标仓库,不开启仓库列表权限

如果用户不需要通过控制台的仓库列表导航,仅需操作指定仓库,可以保留你原有的IAM策略,不添加codecommit:ListRepositories权限。

用户可以直接访问该仓库的控制台专属URL:
https://eu-west-1.console.aws.amazon.com/codesuite/codecommit/repositories/Allowed-Repo/browse

此时用户能正常对Allowed-Repo进行全读写操作,但无法进入仓库列表页面,完全看不到其他仓库的存在。

原策略代码:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "codecommit:*",
            "Resource": "arn:aws:codecommit:eu-west-1:123456789:Allowed-Repo"
        }
    ]
}

方案2:开启仓库列表权限,但自动过滤无权限仓库

如果你希望用户能通过控制台的仓库列表导航操作目标仓库,可以添加codecommit:ListRepositories权限,控制台会自动隐藏用户无权限访问的仓库。

CodeCommit控制台的逻辑是:调用ListRepositories获取所有仓库名后,会逐个调用GetRepository获取仓库详情,仅显示用户拥有GetRepository权限的仓库(你的原策略已包含该仓库的全权限,自然覆盖GetRepository)。

调整后的完整策略:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "codecommit:*",
            "Resource": "arn:aws:codecommit:eu-west-1:123456789:Allowed-Repo"
        },
        {
            "Effect": "Allow",
            "Action": "codecommit:ListRepositories",
            "Resource": "*"
        }
    ]
}

此时用户进入CodeCommit控制台,只会看到Allowed-Repo这一个仓库,其他仓库不会出现在列表中。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 07:24:55