更新用户角色
基于角色的访问控制(RBAC)将权限与角色绑定,而不是直接与用户绑定。然后将这些角色分配给用户,从而简化访问管理,提高效率并减少错误。本指南将引导你使用 API7 企业版的自定义角色、权限策略和权限边界来管理基于角色的访问控制。
更新用户角色
- 从顶部导航栏选择 组织,然后选择 用户。
- 为目标用户点击 更新角色。
- 添加或移除角色。
- 点击 更新。
备注
要查看每个角色的权限,请从顶部导航栏选择 组织,然后选择 用户。
角色和权限策略相结合以控制访问。以下是一个使用自定义角色和权限策略来隔离环境访问的示例。
定义权限策略
- 创建三个网关组:
test,UAT,和production。 - 从顶部导航栏选择 组织,然后选择 权限策略。
- 点击 新增策略。
- 在 新增权限策略 对话框中,执行以下操作:
-
在 名称 字段中,输入
test-gateway-group-full-access。 -
在 策略编辑器 对话框中,输入以下配置:
{"statement": [{"resources": ["arn:api7:gateway:gatewaygroup/b6db7341-fc1f-4cee-a318-3e782a163d24"],"actions": ["<.*>"],"effect": "allow"},{"resources": ["arn:api7:gateway:gatewaygroup/b6db7341-fc1f-4cee-a318-3e782a163d24/publishedservice/<.*>"],"actions": ["<.*>"],"effect": "allow"}]}备注资源 ID 应与创建的网关组保持一致。请根据你的实际情况进行更改。
-
点击 新增。
-
- 点击 新增策略。
- 在对话框中,执行以下操作:
-
在 名称 字段中,输入
uat-gateway-group-full-access。 -
在 策略编辑器 字段中,输入以下配置:
{"statement": [{"resources": ["arn:api7:gateway:gatewaygroup/45a06edc-4a93-4bea-a437-3f153b56254c"],"actions": ["<.*>"],"effect": "allow"},{"resources": ["arn:api7:gateway:gatewaygroup/45a06edc-4a93-4bea-a437-3f153b56254c/publishedservice/<.*>"],"actions": ["<.*>"],"effect": "allow"}]} -
点击 新增。
-
- 点击 新增策略。
- 在对话框中,执行以下操作:
-
在 名称 字段中,输入
production-gateway-group-full-access。 -
在 策略编辑器 字段中,输入以下配置:
{"statement": [{"resources": ["arn:api7:gateway:gatewaygroup/edc12ecd-94a5-49b2-b82d-8d1113e6cd86"],"actions": ["<.*>"],"effect": "allow"},{"resources": ["arn:api7:gateway:gatewaygroup/edc12ecd-94a5-49b2-b82d-8d1113e6cd86/publishedservice/<.*>"],"actions": ["<.*>"],"effect": "allow"}]} -
点击 新增。
-
定义自定义角色
- 从顶部导航栏选择 组织,然后选择 用户。
- 点击 新增自定义角色。
- 在对话框中,执行以下操作:
- 在 名称 字段中,输入
Development Team Member。 - 点击 新增。
- 在 名称 字段中,输入
- 以相同的方式创建另外两个角色
Development Team Lead和Test Engineer。
分配具有受控访问权限的角色
- 点击
Development Team Member并进入角色页面。 - 点击 关联策略。
- 在对话框中,执行以下操作:
- 在 权限策略 字段中,选择
test-gateway-group-full-access。 - 点击 提交。这允许他们仅在测试环境中进行更改。
- 在 权限策略 字段中,选择
- 将
test-gateway-group-full-access和uat-gateway-group-full-access策略分配给Development Team Lead。这使他们能够在测试和 UAT 环境中工作,可能还包括将稳定配置从测试环境同步到 UAT 环境的能力。 - 将
uat-gateway-group-full-access和production-gateway-group-full-access策略分配给Test Engineer。这将他们的访问权限限制在 UAT 和生产环境中,专注于新 API 的测试和发布任务。
验证
- 使用拥有
Development Team Member角色的帐户登录 API7 企业版;该帐户只能访问Test网关组。 - 使用拥有
Development Team Lead角色的帐户登录 API7 企业版;该帐户只能访问Test和UAT网关组。 - 使用拥有
Test Engineer角色的帐户登录 API7 企业版;该帐户只能访问UAT和Production网关组。
设置角色映射(需要 SSO)
满足定义的键值映射规则的用户,在登录时将被自动分配相应的角色。有关详细信息,请参阅启用角色映射。
备注
角色映射的优先级高于手动角色分配。当角色映射处于激活状态时,对用户角色进行的任何手动调整都将在下一次用户登录时被覆盖。