通过标签功能将服务进行分组,可以实现不同角色对不同分组的服务拥有不同的操作权限。

背景信息

当您创建10个函数计算的服务时,需要将5个服务授权给dev团队,另外5个服务授权给ops团队。您希望每个团队只能查看被授权的服务,未被授权的服务将不允许查看。

您可以通过标签功能将各团队进行分组,然后给不同分组的团队授予不同的权限。您需给其中5个服务打上一对标签,标签键是team,标签值是dev;另外5个服务打上另一对标签,标签键是team,标签值是ops

操作步骤

  1. 将5个授权给dev团队的服务打上team:dev标签,5个授权给ops团队的服务打上team:ops标签。详细操作,请参见新建标签
  2. 创建RAM用户
  3. 创建用户组
    创建dev和ops两个用户组。
  4. 添加用户组成员
    将不同的RAM用户添加到相应的用户组下。
  5. 为两个用户组授予不同的权限。
    权限策略分为系统权限策略和自定义权限策略,根据实际场景选择合适的权限策略:
    • 为用户组授予系统权限策略。

      详细操作,请参见为用户组授权

    • 为用户组授予自定义权限策略。
      1. 创建自定义权限策略
        假设给dev团队创建的自定义策略名称为 policyForDevTeam,策略示例如下。
        {
            "Statement": [
                {
                    "Action": "fc:*",
                    "Effect": "Allow",
                    "Resource": "*",
                    "Condition": {
                        "StringEquals": {
                            "fc:tag/team": "dev"
                        }
                    }
                },
                {
                    "Action": "fc:ListServices",
                    "Effect": "Allow",
                    "Resource": "*"
                },
                {
                    "Action": "fc:GetResourceTags",
                    "Effect": "Allow",
                    "Resource": "*"
                }
            ],
            "Version": "1"
        }         
        假设给ops团队创建的自定义策略名称为 policyForOpsTeam,策略示例如下。
        {
            "Statement": [
                {
                    "Action": "fc:*",
                    "Effect": "Allow",
                    "Resource": "*",
                    "Condition": {
                        "StringEquals": {
                            "fc:tag/team": "ops"
                        }
                    }
                },
                {
                    "Action": "fc:ListServices",
                    "Effect": "Allow",
                    "Resource": "*"
                },
                {
                    "Action": "fc:GetResourceTags",
                    "Effect": "Allow",
                    "Resource": "*"
                }
            ],
            "Version": "1"
        }          
      2. 为用户组授权

        选择权限时请选择刚创建好的自定义策略。

    完成授权后,处于dev用户组的RAM账号只能操作标签为 team:dev的服务,处于ops用户组的RAM账号只能操作标签为 team:ops的服务。