メインコンテンツへスキップ
このガイドでは、オンプレミス EK インスタンスの SAML SSO 用のイデンティティプロバイダー(IdP)として Azure Active Directory(Entra ID)を設定する方法を説明します。Azure AD に入力する SAML 設定、フェデレーションメタデータの取得方法、統合を完了するために EK でドメインを登録する方法をカバーします。
EK の汎用 SAML フローは Azure AD / Entra ID とそのまま動作します。まだお読みでない場合は、開始前に統合の仕組みを理解するために SAML SSO の概要を参照してください。

前提条件

  • Azure AD / Entra ID テナントへの管理者アクセス権があること。
  • オンプレミス EK インスタンスへのスーパーアドミンアクセス権があること。
  • EK バックエンドホストの完全修飾ドメイン名(FQDN)を知っていること(例:ek-api.corp.acme.com)。
  • SSO を有効にしたいメールドメインを知っていること(例:acme.com)。

パート1 — Azure AD の設定

Azure AD で新しいエンタープライズアプリケーションを作成

1

新しいエンタープライズアプリケーションを作成

Azure ポータルで、Azure Active Directory → エンタープライズアプリケーションに移動し、新しいアプリケーションをクリックします。独自のアプリケーションを作成を選択し、名前(例:EK SSO)を付け、**ギャラリーにない他のアプリケーションを統合(Non-gallery)**を選択します。
2

SSO 設定を開く

アプリケーションが作成されたら、管理 → シングルサインオンに移動し、サインオン方法として SAML を選択します。
3

基本 SAML 設定を入力

基本 SAML 設定セクションで、以下の値を入力します:
フィールド
識別子(エンティティ ID)https://<your-FQDN>/backend/user/generic/sso/saml/acs/admin
応答 URL(ACS URL)https://<your-FQDN>/backend/user/generic/sso/saml/acs/admin
サインオン URL空欄のまま
リレーステートdefault
ログアウト URL空欄のまま
4

属性とクレームを設定

属性とクレームセクションで、以下のマッピングを確認または追加します:
属性
givennameuser.givenname
surnameuser.surname
emailaddressuser.mail
nameuser.userprincipalname
DisplayNameuser.displayname
emailuser.mail
一意のユーザー識別子(Name ID)user.userprincipalname

パート2 — Azure AD メタデータの取得

Azure AD アプリケーションが設定されたら、フェデレーションメタデータ URL を取得します:
1

SAML 証明書セクションに移動

アプリケーションで、管理 → シングルサインオン → SAML 証明書に移動します。
2

App Federation Metadata URL をコピー

App Federation Metadata URL を見つけてコピーします。パスは:
Manage > Single sign-on > SAML Certificates > App Federation Metadata URL
この URL はパート3で必要です。
Azure AD メタデータ URL

パート3 — EK でドメインを登録

ドメイン登録エンドポイントに POST リクエストを送信します:
curl -X POST "https://<your-backend-host>/backend/sso/add_new_configuration" \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: YOUR_API_KEY" \
  -H "X-API-SECRET: YOUR_API_SECRET" \
  -d '{
    "enterprise_id": "acme.com",
    "provider": "azure",
    "metadata_url": "https://your-azure-federation-metadata-url",
    "backend_root_url": "<your-backend-host>/backend"
  }'

必須フィールド

フィールド説明
enterprise_idユーザーのメールドメイン(例:acme.com)。
provider"azure"
metadata_urlパート2の App Federation Metadata URL。
backend_root_url(オプション) プロキシ環境でのみ、正しいルーティングに必要。

認証

このエンドポイントには X-API-KEY および X-API-SECRET ヘッダーとして渡す EK API Key と Secret が必要です。 成功すると、バックエンドの sso_providers テーブルにレコードが作成されます。

パート4 — フロントエンドの設定

ドメインが登録されたら、フロントエンドの環境変数を設定し、フロントエンドサービスを再起動します。
1

フロントエンドの環境ファイルを開く

オンプレミスデプロイメントサーバーで onprem-deployment/.env.web を開きます。
2

環境変数を追加

以下の行を追加し、acme.com を実際のメールドメインに置き換えます:
VITE_SSO_ENTERPRISE_ID=acme.com
3

フロントエンドサービスを再起動

docker compose -f docker-compose down
docker compose -f docker-compose up -d

統合のテスト

実際の @<domain> ユーザーで EK にサインインし、フローがエンドツーエンドで動作することを確認します。ユーザーが正常に認証されたがアクセスを拒否された場合、SAML アクセスコントロール設定を確認してください — EK SAML アクセスコントロールと自動チーム/プロジェクト割り当てガイドを参照してください。