すべてのプロダクト
Search
ドキュメントセンター

Microservices Engine:OIDC 認証の設定

最終更新日:Mar 12, 2026

複数のバックエンドサービスがそれぞれ独自の認証ロジックを実装している場合、コードの重複、セキュリティポリシーの不整合、および複雑なメンテナンスが発生します。クラウドネイティブゲートウェイは、OpenID Connect (OIDC) 認証をゲートウェイ層で一元化することでこの課題を解決します。ゲートウェイがトークン検証、セッション管理、ログインリダイレクトを処理するため、バックエンドサービスには事前認証済みのリクエストのみが送信されます。これにより、システムのセキュリティが強化され、より柔軟なセキュリティポリシーの構成が可能になります。また、ゲートウェイ後方のすべてのサービス間でシングルサインオン (SSO) をサポートします。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • 標準 OIDC プロトコルをサポートする ID プロバイダー (IdP)

  • ID プロバイダーから取得した以下の情報

項目説明
Issuer URL.well-known/openid-configuration のディスカバリエンドポイントのベース URL です。ゲートウェイはこの URL を使用して、ID プロバイダーの承認エンドポイント、トークンエンドポイント、および userinfo エンドポイントを自動的に取得します。
Client IDID プロバイダーへの登録時に割り当てられたアプリケーション識別子です。
Client secretID プロバイダーへの登録時に割り当てられたアプリケーションシークレットです。
Redirect URLID プロバイダーに登録されたコールバック URL です。パスは /oauth2/callback である必要があります。フォーマット例: https://yourdomain/oauth2/callback

OIDC 認証フロー

標準 OIDC フロー

標準 OIDC 構成では、以下の 4 つのロールが相互に連携します。

ロール説明
クライアントエンドユーザにサービスを提供するアプリケーション(例:ブラウザまたはモバイルアプリ)
承認サーバーユーザーを認証し、ID トークンを発行する OpenID プロバイダー
ビジネスサーバービジネスロジックを提供するバックエンドサービス
エンドユーザーリソース所有者 — アプリケーションにアクセスする個人

OIDC は OAuth 2.0 を拡張し、ユーザーの ID 情報を自己完結的かつ改ざん防止形式で保持する JSON Web トークン (JWT) である ID トークンを追加します。

Standard OIDC authentication flow

標準フローの動作手順は以下のとおりです。

  1. クライアントが承認サーバーに認証リクエストを送信します。

  2. エンドユーザーが承認ページで認証情報を入力し、リクエストを確認します。

  3. 承認サーバーがリクエストを検証し、クライアントに認証コードを返します。

  4. クライアントが認証コードを含むコールバックリクエストをビジネスサーバーに送信します。

  5. ビジネスサーバーが認証コード、クライアント ID、およびクライアントシークレットを承認サーバーに送信します。

  6. 承認サーバーがリクエストを検証し、ID トークンを返します。

  7. ビジネスサーバーが ID トークンをクライアントに転送します。

  8. クライアントが今後のビジネスリクエストに ID トークンを含めます。

  9. ビジネスサーバーが ID トークンを検証し、ビジネス応答を返します。

このモデルでは、各ビジネスサーバーが承認サーバーに個別に接続してトークンを検証する必要があり、統合作業が重複します。

ゲートウェイベースの OIDC フロー

クラウドネイティブゲートウェイが OIDC 認証を処理する場合、ゲートウェイがトークン交換におけるビジネスサーバーの役割を代替します。承認サーバーはバックエンドサービスに対して透明となり、バックエンドサービスには事前検証済みのリクエストのみが送信されます。

Cloud-native gateway OIDC authentication flow

ゲートウェイベースのフローの動作手順は以下のとおりです。

  1. クライアントがゲートウェイにリクエストを送信します。

  2. ゲートウェイがクライアントを承認サーバーにリダイレクトします。

  3. 承認サーバーがユーザーを認証し、ゲートウェイに認証コードを返します。

  4. ゲートウェイが認証コードをクライアントに返します。

  5. クライアントが認証コードを含むコールバックリクエストをゲートウェイに送信します。

  6. ゲートウェイが認証コード、クライアント ID、およびクライアントシークレットを承認サーバーに送信します。

  7. 承認サーバーがリクエストを検証し、ID トークンを返します。

  8. ゲートウェイが ID トークンをクライアントに送信します。

  9. クライアントが今後のビジネスリクエストに ID トークンを含め、ゲートウェイに送信します。

  10. ゲートウェイが ID トークンを検証し、適切なバックエンドサービスにリクエストを転送します。

  11. バックエンドサービスがリクエストを処理し、ゲートウェイに応答を返します。

  12. ゲートウェイが応答をクライアントに転送します。

未認証または無効なリクエストに対しては、ゲートウェイが自動的にクライアントを承認サーバーのログインページにリダイレクトします。

認証ルールの作成

  1. MSE コンソール にログインします。

  2. 左側ナビゲーションウィンドウで、Cloud-native Gateway > Gateways を選択します。上部ナビゲーションバーでリージョンを選択します。

  3. Gateways ページで、ゲートウェイ ID をクリックします。

  4. 左側ナビゲーションウィンドウで、Security Management > Global Authentication を選択します。

  5. 表示されたページの左上隅で、Create Authentication をクリックします。Create Authentication パネルで、以下のパラメーターを設定し、OK をクリックします。

パラメーター説明
Authentication Name認証ルールの名前です。
Authentication TypeOIDC を選択します。
IssuerID プロバイダーから取得した発行者識別子です。これは OIDC ディスカバリー(.well-known/openid-configuration エンドポイント)に使用されるベース URL です。
Redirect URL認証完了後に承認サーバーがリダイレクトする URL です。フォーマット例: http(s)://yourdomain/oauth2/callback。パスは /oauth2/callback である必要があります。また、この URL は ID プロバイダーに登録済みのリダイレクト URL と一致する必要があります。
Client-IDID プロバイダーの登録情報から取得したアプリケーション ID です。
Client-SecretID プロバイダーの登録情報から取得したアプリケーションシークレットです。
Cookie-Domain認証後にセッションクッキーが送信されるドメインです。a.example.com と設定すると、その特定ホストにのみクッキーが送信され、.example.com と設定すると、example.com のすべてのサブドメインにクッキーが送信されます。
Scope要求する OIDC スコープです。複数の値をセミコロン (;) で区切ります。
Authorizationアクセス制御モードです。ホワイトリスト:指定されたホスト名およびパスに一致するリクエストのみが認証をバイパスします。それ以外のすべてのリクエストは認証が必要です。ブラックリスト:指定されたホスト名およびパスに一致するリクエストのみが認証を必要とします。それ以外のすべてのリクエストは認証をバイパスします。+ Rule Condition をクリックしてエントリーを追加します。各エントリーで、ドメイン名 および パス を指定します。

認証ルートの作成

認証ルールを作成した後、OIDC コールバックを処理するルートを作成します。手順については、「ルーティングルールの作成」をご参照ください。

認証ルートの以下のパラメーターを設定します。

パラメーター
ドメイン名認証ルールの Redirect URL からドメイン名を選択します。ドメイン名が設定されていない場合は、* を選択します。
パスプレフィックス を選択し、/oauth2 を入力します。
宛先サービスoauth2-proxy に設定します。
重要

HTTPS リクエストの場合、ドメイン名を設定し、ルートに関連付けます。

認証ルールの検証

Global Authentication ページに戻ります。新しい認証ルールが一覧に表示された場合、設定は完了です。

認証ルールの詳細の表示

  1. MSE コンソール にログインします。

  2. 左側ナビゲーションウィンドウで、Cloud-native Gateway > Gateways を選択します。上部ナビゲーションバーでリージョンを選択します。

  3. Gateways ページで、ゲートウェイ ID をクリックします。

  4. 左側ナビゲーションウィンドウで、Security Management > Global Authentication を選択します。

  5. 認証ルールの名前をクリックするか、Actions 列の Details をクリックします。詳細ページには、現在の 認証構成 および 権限付与情報 が表示されます。

Authentication rule details

権限付与情報 セクションで、Add Authorization Information をクリックして新しいエントリーを追加します。リクエストドメイン名リクエストパス、および マッチングモード を指定し、OK をクリックします。

認証ルールの管理

Global Authentication ページで、対象の認証ルールを見つけ、Actions 列の以下の操作を使用します。

操作説明
有効化認証ルールを有効化します。
無効化認証ルールを無効化します。
編集認証ルールの設定を変更します。
削除認証ルールを削除します。削除前に、必ずルールを無効化してください。

参考

サポートされているすべての認証メカニズムの概要については、「ゲートウェイ認証の概要」をご参照ください。