Verrazzano認証プロキシ

Verrazzano認証プロキシの詳細

Verrazzanoには、VerrazzanoリソースにアクセスするKeycloakユーザーの認証と認可を可能にするプロキシが用意されています。このプロキシは自動的に構成およびデプロイされます。

Kubernetes API

Verrazzano認証プロキシは、Keycloakユーザーを認証および認可し、Kubernetes APIに対して偽装して、KeycloakユーザーがKubernetesリソースにアクセスできるようにするために使用されます。

この機能は、主にVerrazzanoコンソールで使用されます。コンソールは、PKCEフローを使用してKeycloakに対してユーザーを認証し、ベアラー・トークンを取得し、Kubernetes APIリクエストとともにトークンをAPIに送信します。APIプロキシはトークンを検証し、有効な場合はKubernetes APIサーバーに対してユーザーを偽装します。これにより、コンソールはKeycloakユーザーにかわってKubernetes APIコールを実行でき、Kubernetesは偽装されたアイデンティティに基づいてロールベースのアクセス制御(RBAC)を適用します。

マルチクラスタ・シナリオでは、コンソールはすべてのKubernetes APIリクエストを管理クラスタの認証プロキシに送信します。リクエストが別のクラスタ内のリソースを参照する場合、認証プロキシは、そのリクエストをユーザーの認証トークンとともにリモート・クラスタで実行されている認証プロキシに転送します。

シングル・サインオン(SSO)

Verrazzano認証プロキシは、VerrazzanoコンソールおよびVerrazzano Monitoring Instance (VMI)ロギングおよびメトリック・コンソール全体にSSOを提供します。認証されていないリクエストがプロキシによって受信されると、OIDC PKCE認証フローが実行され、ユーザーのトークンが取得されます。ユーザーがすでにKeycloakに認証されている場合(Verrazzanoコンソールまたは別のVMIコンポーネントにすでにアクセスしているため)、Keycloakは既存のユーザー・セッションに基づいてトークンを返し、そのプロセスはユーザーに対して透過的です。そうでない場合、Keycloakはトークンを返す前に、ユーザーを認証し、セッションを確立します。


AuthProxyのカスタマイズ

Verrazzano AuthProxy設定のカスタマイズ