Skip to content

シングルサインオン(SSO)

シングルサインオン(SSO)は、ユーザーが複数のアプリケーションやシステムに対して、ユーザー名やパスワードなどの単一の認証情報でログインできる認証機構です。各アプリケーションで個別に認証を行う必要がありません。EMQX ダッシュボードで SSO 機能を有効にすると、ユーザーは企業アカウントの認証情報を使って便利にログインできます。組織はユーザーのアイデンティティや権限を一元管理でき、ユーザー管理の手間を軽減します。この機能により、企業のデータやシステムのセキュリティを強化しつつ、ユーザーの利便性も向上します。

EMQX は Lightweight Directory Access Protocol(LDAP)、Security Assertion Markup Language(SAML)2.0 標準、および OpenID Connect(OIDC)に基づく SSO 機能を実装しており、OpenLDAPAzure AD (Microsoft Entra ID)OktaOneLogin などの主要なアイデンティティサービスとの連携をサポートしています。

LDAP ベースの SSO

EMQX ダッシュボードは LDAP を利用した SSO の統合をサポートしています。LDAP は分散ディレクトリ情報サービスにアクセス・管理するためのアプリケーション層プロトコルであり、企業環境における SSO ソリューションの一般的な認証および認可プロトコルです。

LDAP SSO を使用する場合、EMQX はユーザーの LDAP 認証情報をディレクトリサーバーに送信して検証を行います。検証が成功すると、ユーザーのセッション情報を作成し、ダッシュボードへのログインを実行します。

SAML ベースの SSO

EMQX ダッシュボードは SAML をサポートする Identity Provider(IdP)サービスとの統合を可能にしています。SAML は XML ベースのオープンスタンダードなデータフォーマットであり、企業環境で広く利用されている SSO ソリューションです。

SAML SSO では、ユーザーは Identity Provider に対して一度だけ認証を行います。Identity Provider はユーザー情報を含む SAML アサーションを生成し、EMQX ダッシュボードに送信します。EMQX ダッシュボードはこの SAML アサーションを受信し、検証に成功するとユーザーのセッション情報を作成してログインを完了します。SAML はクロスドメイン認証および認可を可能にし、複数のアプリケーション間でのシームレスな統合をサポートします。企業は既存の SAML アイデンティティシステムに EMQX を容易に組み込み、ユーザーが安全かつ便利に EMQX サービスにアクセスできるようにします。

OIDC ベースの SSO

EMQX ダッシュボードは OIDC をサポートする Identity Provider(IdP)サービスとの統合を可能にしています。OIDC は OAuth 2.0 プロトコル上に構築されたアイデンティティレイヤーであり、ユーザーのアイデンティティを検証しユーザー情報を取得するための標準化された方法を提供します。

OIDC SSO では、ユーザーは Identity Provider に認証を行い、ID トークンにユーザー情報を含めて EMQX ダッシュボードに返します。EMQX ダッシュボードはこの ID トークンを受信し、検証に成功するとユーザーのセッション情報を作成してログインを完了します。OIDC はモダンで RESTful な認証手法を提供し、最新のアイデンティティサービスとの統合を容易にします。

設定および利用のワークフロー

  1. 管理者はダッシュボードで SSO を設定・有効化します。設定後、EMQX ダッシュボードのログインページに SSO の入口が表示されます。
  2. ユーザー情報は Identity Provider(IdP)側で設定されます。
  3. ユーザーはダッシュボードのログインページで利用可能な複数のシングルサインオン方式から選択します。
  4. ログイン成功後、EMQX ダッシュボードはユーザー情報に基づきセッションを作成し、ユーザーはダッシュボードにアクセスできます。バックエンドで force_mfa が有効な場合、セッション発行前に TOTP 認証の完了も必要です。
  5. 管理者はユーザーごとにロールや権限を割り当てます。ユーザーはログインを更新後、対応するリソースにアクセス可能となります。

SSO ユーザー向けの MFA

EMQX 5.10 以降、各 SSO バックエンドで force_mfa を有効にすることで、SSO ユーザーにログイン時の TOTP 二要素認証を必須化できます。詳細は SSO ユーザー向けの強制 MFA をご参照ください。

設定例

各 SSO 方式の設定例は以下をご覧ください。