6.2.2. セルフプロビジョニングの無効化
認証されたユーザーグループによる新規プロジェクトのセルフプロビジョニングを禁止することができます。
- cluster-admin 権限を持つユーザーとしてログインします。
self-provisionersclusterrolebinding usage を確認します。以下のコマンドを実行してから、self-provisionersセクションの Subjects を確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow self-provisionerクラスターロールをグループsystem:authenticated:oauthから削除します。self-provisionersクラスターロールバインディングがself-provisionerロールのみをsystem:authenticated:oauthグループにバインドする場合、以下のコマンドを実行します。oc patch clusterrolebinding.rbac self-provisioners -p '{"subjects": null}'$ oc patch clusterrolebinding.rbac self-provisioners -p '{"subjects": null}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow self-provisionersクラスターロールバインディングがself-provisionerロールをsystem:authenticated:oauthグループ以外のユーザー、グループまたはサービスアカウントにバインドする場合、以下のコマンドを実行します。oc adm policy remove-cluster-role-from-group self-provisioner system:authenticated:oauth
$ oc adm policy remove-cluster-role-from-group self-provisioner system:authenticated:oauthCopy to Clipboard Copied! Toggle word wrap Toggle overflow
projectRequestMessageパラメーター値を master-config.yaml ファイルに設定し、開発者に対して新規プロジェクトの要求方法を指示します。このパラメーター値は、ユーザーのプロジェクトのセルフプロビジョニング試行時に web コンソールやコマンドラインに表示される文字列です。以下のメッセージのいずれかを使用できる可能性があります。-
プロジェクトを要求するには、システム管理者 (
projectname@example.com) に問い合わせてください。 -
新規プロジェクトを要求するには、
https://internal.example.com/openshift-project-requestにあるプロジェクト要求フォームに記入します。
サンプル YAML ファイル
... projectConfig: ProjectRequestMessage: "message" ...
... projectConfig: ProjectRequestMessage: "message" ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
プロジェクトを要求するには、システム管理者 (
ロールへの自動更新を防ぐには、
self-provisionersクラスターロールバインディングを編集します。自動更新により、クラスターロールがデフォルトの状態にリセットされます。ロールバインディングをコマンドラインで更新するには、以下を実行します。
次のコマンドを実行します。
oc edit clusterrolebinding.rbac self-provisioners
$ oc edit clusterrolebinding.rbac self-provisionersCopy to Clipboard Copied! Toggle word wrap Toggle overflow 表示されるロールバインディングで、以下の例のように
rbac.authorization.kubernetes.io/autoupdateパラメーター値をfalseに設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
単一コマンドを使用してロールバインディングを更新するには、以下を実行します。
oc patch clusterrolebinding.rbac self-provisioners -p '{ "metadata": { "annotations": { "rbac.authorization.kubernetes.io/autoupdate": "false" } } }'$ oc patch clusterrolebinding.rbac self-provisioners -p '{ "metadata": { "annotations": { "rbac.authorization.kubernetes.io/autoupdate": "false" } } }'Copy to Clipboard Copied! Toggle word wrap Toggle overflow