1.12. ユーザーおよびプロファイルの管理
1.12.1. Red Hat OpenShift Service Mesh メンバーの作成
ServiceMeshMember
リソースは、各ユーザーがサービスメッシュプロジェクトまたはメンバーロールに直接アクセスできない場合でも、Red Hat OpenShift Service Mesh の管理者がプロジェクトをサービスメッシュに追加するパーミッションを委譲する方法を提供します。プロジェクト管理者にはプロジェクトで ServiceMeshMember
リソースを作成するためのパーミッションが自動的に付与されますが、サービスメッシュ管理者がサービスメッシュへのアクセスを明示的に付与するまで、これらのプロジェクト管理者はこれを ServiceMeshControlPlane
にポイントすることはできません。管理者は、ユーザーに mesh-user
ユーザーロールを付与してメッシュにアクセスするパーミッションをユーザーに付与できます。この例では、istio-system
が Service Mesh コントロールプレーンプロジェクトの名前です。
$ oc policy add-role-to-user -n istio-system --role-namespace istio-system mesh-user <user_name>
管理者は Service Mesh コントロールプレーンプロジェクトで mesh user
ロールバインディングを変更し、アクセスが付与されたユーザーおよびグループを指定できます。ServiceMeshMember
は、プロジェクトを、参照する Service Mesh コントロールプレーンプロジェクト内の ServiceMeshMemberRoll
に追加します。
apiVersion: maistra.io/v1 kind: ServiceMeshMember metadata: name: default spec: controlPlaneRef: namespace: istio-system name: basic
mesh-users
ロールバインディングは、管理者が ServiceMeshControlPlane
リソースを作成した後に自動的に作成されます。管理者は以下のコマンドを使用してロールをユーザーに追加できます。
$ oc policy add-role-to-user
管理者は、ServiceMeshControlPlane
リソースを作成する前に、mesh-user
ロールバインディングを作成することもできます。たとえば、管理者は ServiceMeshControlPlane
リソースと同じ oc apply
操作でこれを作成できます。
この例では、alice
のロールバインディングを追加します。
apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: namespace: istio-system name: mesh-users roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: mesh-user subjects: - apiGroup: rbac.authorization.k8s.io kind: User name: alice