SAML の概要

SAML を使用すると、シングル サインオン(SSO)サーバーに委任することで、組織メンバーが Apigee Edge を使用しているときの認証方法を特定の管理者が制御できるようになります。Edge で SAML を使用すれば、Edge UI と API での SSO をサポートできるだけでなく、提供する他のサービスが SAML をサポートしていれば、それらのサービスでも SSO を使用できます。

SAML を使用して統合ポータルで SSO を有効にするには、SAML ID プロバイダを構成するをご覧ください。

Edge での ID ゾーン管理について

ID ゾーンとは、認証に使用される ID プロバイダと、ユーザー登録やログイン エクスペリエンスなどのカスタム構成を定義する認証領域のことです。ユーザーは、ID プロバイダで認証された場合にのみ、ID ゾーンの対象となるエンティティにアクセスできます。

Apigee Edge では、次の表に示す認証タイプがサポートされています。

認証タイプ 説明
デフォルト Apigee Edge アカウントを作成し、ユーザー名とパスワードを使用して Edge UI にログインします。Edge API を使用する場合、HTTP の Basic 認証でこれらと同じ認証情報を使用して呼び出しを承認します。
SAML SAML(セキュリティ アサーション マークアップ言語)は、シングル サインオン(SSO)環境用の標準プロトコルです。SAML を使用した SSO 認証では、新しいアカウントを作成せずに、既存の認証情報を使用して Apigee Edge にログインできます。

SAML 認証をサポートするには、SAML を有効にするの説明に従って新しい ID ゾーンを作成し、SAML ID プロバイダを構成します。

SAML 認証の利点

SAML 認証には、いくつかの利点があります。SAML を使用すると、次のことが可能になります。

  • ユーザー管理を完全に制御できる: 会社の SAML サーバーを Edge に接続します。組織を離れたユーザーが中央でプロビジョニング解除されると、そのユーザーは自動的に Edge へのアクセスを拒否されます。
  • Edge にアクセスするユーザーの認証方法を制御する: Edge 組織にそれぞれ異なる認証タイプを選択します。
  • 認証ポリシーを制御する: SAML プロバイダでサポートされている認証ポリシーの方が、自社の標準により合致している場合があります。
  • Edge デプロイメントでのログイン、ログアウト、失敗したログイン試行、高リスクのアクティビティをモニタリングする

考慮事項

SAML の使用を決定する前に、以下の要件について考慮する必要があります。

  • 既存のユーザー: 既存のすべての組織ユーザーを SAML ID プロバイダに追加する必要があります。
  • ポータル: Drupal ベースのデベロッパー ポータルを使用している場合、ポータルから Edge へのアクセスには OAuth が使用されます。これを使用するには、事前にポータルを構成し直さなければならない場合があります。
  • Basic 認証が無効になる: すべてのスクリプトで、Basic 認証を OAuth に置き換える必要があります。
  • OAuth と SAML を分離する必要がある: OAuth 2.0 と SAML の両方を使用する場合、OAuth 2.0 フローと SAML フローに別々のターミナル セッションを使用する必要があります。

Edge での SAML の動作

SAML 仕様では、次の 3 つのエンティティを定義しています。

  • プリンシパル(Edge UI ユーザー)
  • サービス プロバイダ(Edge SSO)
  • ID プロバイダ(SAML アサーションを返します)

SAML が有効な場合、プリンシパル(Edge UI ユーザー)がサービス プロバイダ(Edge SSO)にアクセスをリクエストします。リクエストを受けた Edge SSO(SAML サービス プロバイダとしての役割を持つ)は、SAML ID プロバイダに ID アサーションをリクエストしてこれを取得し、そのアサーションを使用して Edge UI へのアクセスに必要な OAuth 2.0 トークンを作成します。その後、ユーザーは Edge UI にリダイレクトされます。

このプロセスを次の図に示します。

処理の説明:

  1. ユーザーは、Edge UI にアクセスするため、Edge SSO のログイン ドメインにリクエストを送ります。このリクエストにはゾーン名が含まれます。例: https://zonename.login.apigee.com
  2. https://zonename.login.apigee.com に対する未認証のリクエストが、お客様の SAML ID プロバイダにリダイレクトされます。例: https://idp.example.com
  3. お客様がまだ ID プロバイダにログインしていない場合は、ログインするよう求められます。
  4. SAML ID プロバイダによってユーザーが認証されます。SAML ID プロバイダは SAML 2.0 アサーションを生成し、そのアサーションを Edge SSO に返します。
  5. Edge SSO がアサーションを検証し、アサーションからユーザー ID を抽出して Edge UI 用の OAuth 2.0 認証トークンを生成します。その後、ユーザーを次の場所にある Edge UI のメインページにリダイレクトします。
    https://zonename.apigee.com/platform/orgName

    ここで、orgName は Edge 組織の名前です。

SAML を使用して Edge API にアクセスするもご覧ください。

使ってみる

SAML を有効にする方法を見る