This documentation is for a release that is no longer maintained
See documentation for the latest supported version.5.2. 使用 Helm 在外部文件中定义授权
要自动化 Red Hat Developer Hub 维护,您可以在启动 Developer Hub 前在外部文件中定义权限和角色。您需要准备文件,将其上传到 OpenShift Container Platform 项目中,并将 Developer Hub 配置为使用外部文件。
先决条件
流程
使用以下格式在
rbac-policies.csv
CSV 文件中定义您的策略:定义角色权限:
p, <role_entity_reference>, <permission>, <action>, <allow_or_deny>
p, <role_entity_reference>, <permission>, <action>, <allow_or_deny>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - <role_entity_reference>
-
角色实体引用,例如:
role:default/guest
。 - <permission>
权限,如:
bulk.import
、catalog.entity.read
或catalog.entity.refresh
,或权限资源类型,如bulk-import
或catalog-entity
。请参阅: 权限策略参考。
- <action>
-
操作类型,例如:
使用
、读取
、创建
、更新
、删除
。 - <allow_or_deny>
-
授予访问权限:
允许或拒绝
为组或用户分配角色:
g, <group_or_user>, <role_entity_reference>
g, <group_or_user>, <role_entity_reference>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - <group_or_user>
组,如
user:default/mygroup
或 user,例如:user:default/myuser
。Sample
rbac-policies.csv
p, role:default/guests, catalog-entity, read, allow p, role:default/guests, catalog.entity.create, create, allow g, user:default/my-user, role:default/guests g, group:default/my-group, role:default/guests
p, role:default/guests, catalog-entity, read, allow p, role:default/guests, catalog.entity.create, create, allow g, user:default/my-user, role:default/guests g, group:default/my-group, role:default/guests
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
使用以下格式在
rbac-conditional-policies.yaml
YAML 文件中定义条件策略:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 请参阅: 条件策略参考。
将
rbac-policies.csv
和rbac-conditional-policies.yaml
文件上传到包含 Developer Hub 的 OpenShift Container Platform 项目中的rbac-policies
配置映射。oc create configmap rbac-policies \ --from-file=rbac-policies.csv \ --from-file=rbac-conditional-policies.yaml
$ oc create configmap rbac-policies \ --from-file=rbac-policies.csv \ --from-file=rbac-conditional-policies.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 更新 Developer Hub
Backstage
Helm Chart,以挂载到rbac-policies
配置映射中的 Developer Hub 文件系统:-
在 Developer Hub Helm Chart 中,进入 Root Schema
Backstage chart schema Backstage parameters Backstage container additional volume mount。 选择 Add Backstage 容器附加卷挂载 并添加以下值:
- mountPath
-
/opt/app-root/src/rbac
- Name
-
rbac-policies
将 RBAC 策略添加到 Developer Hub Helm Chart 中的 Backstage 容器 附加卷:
- 名称
-
rbac-policies
- configMap
- defaultMode
-
420
- 名称
-
rbac-policies
-
在 Developer Hub Helm Chart 中,进入 Root Schema
更新 Developer Hub
app-config.yaml
配置文件,以使用rbac-policies.csv
和rbac-conditional-policies.yaml
外部文件:app-config.yaml
文件片段Copy to Clipboard Copied! Toggle word wrap Toggle overflow