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

SAMLサービスプロバイダー

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

SAML IDプロバイダー

一部のアプリケーション(Salesforce、Box、Workdayなど)では、SAMLプロトコルを使用して外部IdPに対するユーザー認証を行えます。その後、そのアプリケーションを、アプリケーションのSAML IdPとして機能するAuth0と統合できます。アプリケーションユーザーはログインするために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
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 を呼び出す。
  • セルフサービスユーザーサインアップを実装する。
アプリケーションがローカルストアからユーザープロファイル情報を取得するように作成されている場合は、Auth0でアカウントを作成した後にローカルプロファイルを作成する必要があります。これを行うには、次のような方法があります。
  • アプリケーション内でユーザープロファイルを作成するアウトオブバンドのプロセス。
  • 最初のログイン時に実行され、アプリケーションAPIを呼び出してアプリケーションでユーザープロファイルを作成するAuth0ルール。
  • SAMLアサーションの情報に基づいて、ユーザープロファイルを動的に作成するようにアプリケーションを変更する。

Auth0をサービスおよびIDプロバイダーとして使用したSAML SSOのテスト

Auth0は、テスト目的で、SAMLサービスプロバイダーとSAML IDプロバイダーの両方として使用できます。
プロトコル - SAML SPとしてのAuth0とIdPの図

もっと詳しく

I