首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Openshift 4 RBAC

Openshift 4 RBAC
EN

Stack Overflow用户
提问于 2021-07-13 15:09:41
回答 1查看 260关注 0票数 0

我所拥有的:

cluster

  • already配置的OAuth

  • self-provisioner角色中Openshift 4.6

  • 3主/工节点的
  1. 默认安装-auth组已被删除

详细问题/目标:给用户分配一个自我提供者角色允许用户创建一个项目和项目内的任何资源,我想要实现的是,一个用户可以创建一个项目,但在项目中没有任何进一步的权限/权限。这有可能吗?

Openshift 4.6的文档告诉我们,任何用户创建一个项目,用户(请求者)将成为该项目的管理员,这是因为Openshift API将在创建项目时使用默认模板。

我不知道我在哪里做的更改来反映我的目标,它是模板还是使用任何不同的RBAC角色。

提前谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-13 17:24:29

您需要的是自定义项目模板。看这里,https://docs.openshift.com/container-platform/4.6/applications/projects/configuring-project-creation.html#modifying-template-for-new-projects_configuring-project-creation

首先,您需要从openshift-config备份一个项目模板,老实说,我不知道怎么做。如果有人想办法,请把评论放在答案下面。-请看@Stevencommy的第一个回答:

创建新的项目模板

代码语言:javascript
复制
oc adm create-bootstrap-project-template -o yaml > template.yaml

template.yml配置中

代码语言:javascript
复制
kind: Project
...
    name: ${PROJECT_NAME}

新创建的项目的默认用户配置为

代码语言:javascript
复制
- apiGroup: rbac.authorization.k8s.io
  kind: User
  name: <YOUR_USER_WITHOUT_RIGHTS_TO_CREATE_PROJECT>

然后创建模板

代码语言:javascript
复制
oc create -f template.yaml -n openshift-config

更新

代码语言:javascript
复制
oc edit project.config.openshift.io/cluster

那里

代码语言:javascript
复制
spec:
  projectRequestTemplate:
    name: <template_name> 

<template_name>默认值是project-request,您也可以在oc get templates -n openshift-config | grep project-request中列出

如果一切顺利,您可以使用oc new-project <your-project>进行测试。项目的user应该是<YOUR_USER_WITHOUT_RIGHTS_TO_CREATE_PROJECT>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68365037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档