Стандартная операционная процедура: отключение роли self-provisioners
Отключение роли self-provisioners
По умолчанию при аутентификации пользователя в Openshift через Oauth он входит в группу self-provisioners. Эта группа даёт возможность создавать новые проекты. В кластере Fedora мы не хотим, чтобы пользователи могли создавать свои собственные проекты, поскольку у нас есть система, в которой мы создаём проекты и контролируем их администраторов.
Чтобы отключить роль self-provisioner, выполните следующие действия, как описано в документации[1].
oc describe clusterrolebinding.rbac self-provisioners Name: self-provisioners Labels: <none> Annotations: rbac.authorization.kubernetes.io/autoupdate=true Role: Kind: ClusterRole Name: self-provisioner Subjects: Kind Name Namespace ---- ---- --------- Group system:authenticated:oauth
Удалите субъекты, к которым применяется роль self-provisioners.
oc patch clusterrolebinding.rbac self-provisioners -p '{"subjects": null}'
Убедитесь, что изменение выполнено успешно
oc describe clusterrolebinding.rbac self-provisioners Name: self-provisioners Labels: <none> Annotations: rbac.authorization.kubernetes.io/autoupdate: true Role: Kind: ClusterRole Name: self-provisioner Subjects: Kind Name Namespace ---- ---- ---------
При обновлении кластера до новой версии, если мы не пометим роль соответствующим образом, разрешения будут восстановлены после завершения обновления.
Проверьте, что значение в настоящее время настроено на восстановление после обновления:
oc get clusterrolebinding.rbac self-provisioners -o yaml
apiVersion: authorization.openshift.io/v1
kind: ClusterRoleBinding
metadata:
annotations:
rbac.authorization.kubernetes.io/autoupdate: "true"
...
Мы хотим установить rbac.authorization.kubernetes.io/autoupdate в false. Для этого выполните следующее.
oc patch clusterrolebinding.rbac self-provisioners -p '{ "metadata": { "annotations": { "rbac.authorization.kubernetes.io/autoupdate": "false" } } }'
Want to help? Learn how to contribute to Fedora Docs ›