SAMLの設定
SAMLサービスプロバイダー
アプリケーション、特にカスタムアプリケーションは、OpenID Connect(OIDC)やOAuth 2.0などのプロトコルを使用することで、外部IdPに対してユーザーを認証できます。しかし、どちらのプロトコルを使用するようにアプリケーションを作成した場合でも、認証にエンタープライズSAMLプロバイダーを利用する方が良い場合があります。

SAML IDプロバイダー
一部のアプリケーション(Salesforce、Box、Workdayなど)では、SAMLプロトコルを使用して外部IdPに対するユーザー認証を行えます。その後、そのアプリケーションを、アプリケーションのSAML IdPとして機能するAuth0と統合できます。アプリケーションユーザーはログインするためにAuth0にリダイレクトされ、Auth0はLDAPディレクトリ、データベース、別のSAML IdPやソーシャルプロバイダーなどのバックエンド認証接続を使用してユーザーを認証できます。ユーザーが認証されると、Auth0はそのことを示すSAMLアサーションをアプリケーションに返します。

以下は、SAMLプロトコルをサポートすることが知られているIdPサービスのリストです。リストに挙げられていないサービスがある可能性もあります。以下のプロバイダーはKantaraによる相互運用性テストに参加しているため、SAML仕様に十分準拠していると考えられます。
adAS
ADFS
Dot Net Workflow
Elastic SSO 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
Auth0は、Auth0を使って以下のSAML IDプロバイダーを構成するための具体的な手順を提供しています。
サービスプロバイダーとしてのAuth0
Auth0がSAMLフェデレーションでサービスプロバイダーとして機能する場合、Auth0は、特定のユーザーに対してアカウントを事前に作成しなくても、認証要求をIDプロバイダーにルーティングできます。Auth0は、IDプロバイダーから返されたアサーションを使用して、そのユーザーのユーザープロファイルを作成するために必要な情報を取得できます(このプロセスはJust-In-Timeプロビジョニングと呼ばれることもあります)。詳細は、「複数の接続オプションから選択する」をお読みください。
Auth0では、認証プロセスの前にユーザーアカウントを事前に作成する必要はありませんが、Auth0と統合されたアプリケーションでは必要になる可能性があります。この場合、これを処理するためのオプションがいくつかあります。
IDプロバイダーがユーザーを作成した後、アウトオブバンドのプロセスを使用して、アプリケーション(またはAuth0)で付随するユーザーを作成し、そのアプリケーションに必要なユーザープロファイル属性を追加できます。認証後、プロファイルに属性が欠落している場合は、アプリケーションが適切なソースから属性を取得し、Auth0のユーザープロファイルに保管できます。追加の属性は、ユーザーが次回ログインするときに(IDプロバイダーによって追加された属性に加えて)アプリケーションに送信されます。
Auth0ルールを使用してAPIを呼び出し、不足している情報を取得して、それをAuth0プロファイルに動的に追加できます(その後、アプリケーションに返されます)。ルールは認証が成功した後に実行され、アプリケーションがプロファイル属性を毎回取得することも、自分で属性をAuth0プロファイルに保存することもできます。
Auth0は、IDプロバイダーからアプリケーションに基本的なプロファイル情報を渡すことができ、その後、別のソースから不足している情報を取得します。アプリケーションは、2つの情報セットを使って、ローカルユーザープロファイルを作成します。
Auth0 SAMLP接続の構成の一部としてメールドメインを指定して、選択したユーザーグループを処理するIDPを制御できます。たとえば、X社のAuth0 SAMLP接続の構成にメールドメインのexample.com
を追加すると、example.com
ドメインのメールを持つすべてのユーザーが、X社の特定のIDPによって処理されます。
IDプロバイダーとしてのAuth0
Auth0がSAMLフェデレーションでIDプロバイダーとして機能する場合、ユーザーアカウントは複数の方法で作成できます。
LDAPディレクトリ、データベース、または別のSAML IDプロバイダーなどのバックエンド認証システムを使用する。
Auth0 Dashboardを使用する。
Auth0 Management APIを呼び出す。
セルフサービスユーザーサインアップを実装する。
アプリケーションがローカルストアからユーザープロファイル情報を取得するように作成されている場合は、Auth0でアカウントを作成した後にローカルプロファイルを作成する必要があります。これを行うには、次のような方法があります。
アプリケーション内でユーザープロファイルを作成するアウトオブバンドのプロセス。
最初のログイン時に実行され、アプリケーションAPIを呼び出してアプリケーションでユーザープロファイルを作成するAuth0ルール。
SAMLアサーションの情報に基づいて、ユーザープロファイルを動的に作成するようにアプリケーションを変更する。
Auth0をサービスおよびIDプロバイダーとして使用したSAML SSOのテスト
Auth0は、テスト目的で、SAMLサービスプロバイダーとSAML IDプロバイダーの両方として使用できます。
