メインコンテンツへスキップ

SAML サービスプロバイダー

アプリケーション、特にカスタムアプリケーションでは、 などの外部IDプロバイダーに対して、 Connect (OIDC) や などのプロトコルを使用してユーザーを認証できます。ただし、アプリケーションがこれらのいずれかのプロトコルを使用するように実装されていても、認証にはエンタープライズ プロバイダーを利用したい場合があります。
Protocols SAML SPs Diagram

SAML IDプロバイダー

一部のアプリケーション (Salesforce、Box、Workday など) では、SAML プロトコルを使用して外部 IdP でユーザーを認証できます。その後、アプリケーションを Auth0 と統合し、Auth0 をそのアプリケーションの SAML IdP として機能させることができます。アプリケーションのユーザーはログインのために Auth0 にリダイレクトされ、Auth0 は LDAP ディレクトリ、データベース、別の SAML IdP、またはソーシャルプロバイダーなど、任意のバックエンド認証接続を使用してユーザーを認証できます。ユーザーが認証されると、Auth0 は認証済みであることを示す SAML アサーションをアプリケーションに返します。
SAML IdP のプロトコル図
以下は、SAML プロトコルをサポートしていることが確認されている IdP サービスの一覧です。以下に示したもの以外にも、追加のサービスが存在する可能性があります。次のプロバイダーは Kantara の相互運用性テストに参加しているため、SAML 仕様によく準拠している可能性が高いです。
  • adAS
  • ADFS
  • Dot Net Workflow
  • Elastic Team & Enterprise
  • Entrust GetAccess & IdentityGuard (サポートされているプロトコルを確認)
  • EIC (サポートされているプロトコルを確認)
  • Ilex Sign&go
  • iWelcome
  • NetIQ Access Manager
  • OpenAM
  • RCDevs Open SAMPL IdP
  • Optimal IdM VIS Federation Services
  • Oracle Access Manager (Oracle Identity Federation はこれに統合)
  • PingFederate (IDP Light)
  • RSA Federated Identity (IDP Light)
  • SecureAuth
  • Symplified
  • Tivoli Federated Identity Manager
  • TrustBuilder
  • Ubisecure SSO
  • WSO2 Identity Server
また、多くの SAML IDプロバイダーを Auth0 で構成する方法について、手順を追った説明も参照できます。

サービスプロバイダーとしての Auth0

Auth0 が SAML フェデレーションにおけるサービスプロバイダーとして機能する場合、特定のユーザーのアカウントが事前に作成されていなくても、認証リクエストを IDプロバイダーにルーティングできます。IDプロバイダーから返されるアサーションを使用することで、Auth0 はユーザーのプロファイル作成に必要な情報を取得できます (このプロセスは just-in-time プロビジョニングと呼ばれることもあります) 。詳しくは、複数の接続オプションから選択する を参照してください。 Auth0 では認証プロセスの前にユーザーアカウントを事前作成しておく必要はありませんが、Auth0 と統合されたアプリケーション側では必要になる場合があります。その場合は、次のような方法で対応できます。
  • IDプロバイダーがユーザーを作成した後、帯域外のプロセスを使って、対応するユーザーをアプリケーション (または Auth0) に作成し、アプリケーションで必要なユーザープロファイル属性を追加できます。認証後にプロファイルの属性が不足している場合、アプリケーションは適切なソースからそれらを取得して Auth0 のユーザープロファイルに保存できます。追加された属性は、ユーザーが次回ログインしたときに、IDプロバイダーが追加した属性とあわせてアプリケーションに送信されます。
  • Auth0 のルールを使用して API を呼び出し、不足している情報を取得して Auth0 プロファイルに動的に追加できます (その後、アプリケーションに返されます) 。ルールは認証成功後に実行されるため、アプリケーションはプロファイル属性を毎回取得することも、属性を Auth0 プロファイルに保存することもできます。
  • Auth0 は IDプロバイダーから受け取った基本的なプロファイル情報をアプリケーションに渡し、アプリケーションは別のソースから不足している情報を取得できます。この 2 つの情報を使って、アプリケーションはローカルのユーザープロファイルを作成します。
特定のユーザーグループを処理する IDP を制御するために、Auth0 SAMLP 接続設定の一部としてメールアドレスのドメインを指定できます。たとえば、Company X の Auth0 SAMLP 接続設定にメールアドレスドメイン example.com を追加すると、メールアドレスのドメインが example.com のすべてのユーザーは、Company X 用の特定の IDP によって処理されます。

IDプロバイダーとしてのAuth0

Auth0 が SAML フェデレーションの IDプロバイダーとして機能する場合、ユーザーアカウントは複数の方法で作成できます。
  • LDAP ディレクトリ、データベース、または別の SAML IDプロバイダーなどのバックエンド認証システムを使用する。
  • を使用する。
  • Auth0 の を呼び出す。
  • ユーザーによるセルフサービスのサインアップを実装する。
アプリケーションがローカルストアからユーザープロファイル情報を取得するように設計されている場合は、Auth0 でアカウントを作成した後にローカルプロファイルを作成する必要があります。これを行う方法には、次のようなものがあります。
  • アウトオブバンドのプロセスで、アプリケーション内にユーザープロファイルを作成する。
  • 初回ログイン時に実行される Auth0 ルールでアプリケーション API を呼び出し、アプリケーション内にユーザープロファイルを作成する。
  • SAML アサーション内の情報に基づいてユーザープロファイルを動的に作成するよう、アプリケーションを変更する。