Spring Cloud Gateway および API Portal 用に、Microsoft Entra ID を使用してシングル サインオンを設定する
Note
Basic、Standard、Enterprise プランは、2025 年 3 月中旬以降非推奨になり、廃止期間は 3 年間です。 Azure Container Apps に移行することをお勧めします。 詳細については、「Azure Spring Apps の廃止のお知らせ」を参照してください。
Standard 従量課金と専用プランは、2024 年 9 月 30 日以降に非推奨になり、6 か月後に完全にシャットダウンされます。 Azure Container Apps に移行することをお勧めします。 詳細については、「Azure Spring Apps の Standard 従量課金および専用プランを Azure Container Apps に移行する」を参照してください。
この記事の適用対象: ❎ Basic/Stanadard ✅ Enterprise
この記事では、OpenID ID プロバイダーとして Microsoft Entra ID を使用し、Spring Cloud Gateway または API Portal 用にシングル サインオン (SSO) を構成する方法を示します。
前提条件
- Spring Cloud Gateway または API portal が有効な、Enterprise プランのインスタンス。 詳しくは、「クイックスタート: Enterprise プランを使用してアプリをビルドし Azure Spring Apps にデプロイする」をご参照ください。
- Microsoft Entra アプリケーションを管理するのに十分なアクセス許可。
Spring Cloud Gateway または API Portal のために SSO を有効にするには、次の 4 つのプロパティを構成する必要があります。
SSO プロパティ | Microsoft Entra の構成 |
---|---|
clientId | アプリの登録に関するセクションを参照 |
clientSecret | クライアント シークレットの作成に関するセクションを参照 |
scope | スコープの構成に関するセクションを参照 |
issuerUri | 発行者 URI の生成に関するセクションを参照 |
次の手順で、Microsoft Entra ID 内のプロパティを構成します。
Spring Cloud Gateway または API Portal 用のエンドポイントを割り当てる
まず、次の手順に従って、Spring Cloud Gateway と API portal 用に割り当てられたパブリック エンドポイントを取得する必要があります。
- Azure portal 内で、お使いの Enterprise プラン サービス インスタンスを開きます。
- 左側のメニューの [VMware Tanzu components](VMware Tanzu コンポーネント) の下にある [Spring Cloud Gateway] または [API portal] を選択します。
- [Assign endpoint](エンドポイントの割り当て) の横の [はい] を選択します。
- この記事の次のセクションで使用する URL をコピーします。
Microsoft Entra アプリケーションの登録を作成します
次の手順を使用して、アプリケーションを登録して、アプリと Microsoft ID プラットフォームの間に信頼関係を確立します。
- [ホーム] 画面で、左側のメニューから [Microsoft Entra ID] を選択します。
- [管理] で [アプリの登録] を選択し、次に [新規登録] を選択します。
- [名前] にアプリケーションの表示名を入力し、[サポートされているアカウントの種類] で登録するアカウントの種類を選択します。
- [リダイレクト URI (省略可能)] で [Web] を選択し、テキスト ボックスに上のセクションで取得した URL を入力します。 このリダイレクト URI は、認証後に Microsoft Entra ID によって、お使いのクライアントがリダイレクトされ、セキュリティ トークンが送信される場所です。
- [登録] を選択して、アプリケーションの登録を完了します。
登録が完了すると、[アプリの登録] ページの [概要] 画面に [アプリケーション (クライアント) ID] が表示されます。
アプリの登録後にリダイレクト URI を追加する
次の手順に従って、アプリの登録後にリダイレクト URI を追加することもできます。
- アプリケーションの概要から、左側のメニューの [管理] で [認証] を選択します。
- [Web] を選択し、[リダイレクト URI] で [URI の追加] を選択します。
- 新しいリダイレクト URI を追加し、[保存] を選択します。
アプリケーションの登録の詳細については、「クイック スタート: Microsoft ID プラットフォームにアプリケーションを登録する」を参照してください。
クライアント シークレットの追加
アプリケーションは、SSO ワークフローでクライアント シークレットを使用して自身を認証します。 次の手順を使用して、クライアント シークレットを追加できます。
- アプリケーションの概要から、左側のメニューの [管理] で [証明書とシークレット] を選択します。
- [クライアント シークレット] を選択してから、[新しいクライアント シークレット] を選択します。
- クライアント シークレットの説明を入力し、有効期限を設定します。
- [追加] を選択します。
警告
クライアント シークレットは必ず安全な場所に保存してください。 このページを閉じると、取得できなくなります。 クライアント シークレットは、アプリケーションとしてサインインするときにクライアント ID とともに指定する必要があります。
スコープの構成
SSO の scope
プロパティは、JWT ID トークンに含めるスコープのリストです。 これらは、しばしばアクセス許可と呼ばれます。 ID プラットフォームは、openid
、email
、profile
などの複数の OpenID Connect スコープをサポートしています。 詳細については、「Microsoft ID プラットフォームでのスコープとアクセス許可」の「OpenID Connect のスコープ」セクションを参照してください。
発行者 URI を構成する
発行者 URI は、発行者 ID としてアサートされる URI です。 たとえば、指定された発行者 URI が https://example.com
の場合、OpenID プロバイダー構成要求は https://example.com/.well-known/openid-configuration
に対して行われます。
Microsoft Entra ID の発行者 URI は <authentication-endpoint>/<Your-TenantID>/v2.0
のようになります。 <authentication-endpoint>
をクラウド環境の認証エンドポイント (グローバル Azure の https://login.microsoftonline.com
など) に置き換え、<Your-TenantID>
をアプリケーションが登録されたディレクトリ (テナント) ID に置き換えます。
SSO の構成
Microsoft Entra アプリケーションを構成したら、これらの手順に従い、Spring Cloud Gateway または API Portal の SSO プロパティを設定してください。
- 左側のメニューの [VMware Tanzu components](VMware Tanzu コンポーネント) の下にある [Spring Cloud Gateway] または [API portal] を選択してから、[構成] を選択します。
Scope
、Client Id
、Client Secret
、Issuer URI
を適切なフィールドに入力します。 スコープを複数指定するときはコンマで区切ります。- [保存] を選択して SSO 構成を有効にします。
Note
SSO プロパティを構成した後は、必ず ssoEnabled=true
を設定して Spring Cloud Gateway ルートの SSO を有効にしてください。 詳細については、ルートの構成に関するセクションを参照してください。