シングルサインオン(SSO)
シングルサインオン(SSO)は、ユーザーが複数のアプリケーションやシステムに対して、ユーザー名やパスワードなどの単一の認証情報でログインできる認証機構です。各アプリケーションで個別に認証を行う必要がありません。EMQX ダッシュボードでSSO機能を有効にすると、ユーザーは企業アカウントの認証情報を使って便利にログインできます。組織はユーザーのアイデンティティと権限を一元管理でき、ユーザー管理のプロセスを簡素化できます。この機能により、企業のデータやシステムのセキュリティを強化しつつ、ユーザーの利便性を確保します。
EMQXは、LDAP(Lightweight Directory Access Protocol)、SAML 2.0(Security Assertion Markup Language)標準、およびOpenID Connect(OIDC)に基づくSSO機能を実装しており、OpenLDAP、Azure AD(Microsoft Entra ID)、Okta、OneLoginなどの主要なアイデンティティサービスとの連携をサポートしています。
LDAPベースのSSO
EMQX ダッシュボードは、LDAPを利用したSSOの統合を可能にします。LDAPは分散ディレクトリ情報サービスにアクセス・管理するためのアプリケーション層プロトコルであり、企業環境におけるSSOソリューションで一般的な認証および認可プロトコルです。
LDAP SSOを使用する場合、EMQXはユーザーのLDAP認証情報をディレクトリサーバーに送信して検証します。検証が成功すると、ユーザーのセッション情報を作成し、ダッシュボードにログインさせます。
SAMLベースのSSO
EMQX ダッシュボードは、SAMLをサポートするアイデンティティプロバイダー(IdP)サービスとの統合を可能にします。SAMLはXMLベースのオープンスタンダードなデータフォーマットであり、企業環境におけるSSOソリューションで広く利用されています。
SAML SSOでは、ユーザーはアイデンティティプロバイダーで一度だけ認証を行います。アイデンティティプロバイダーはユーザー情報を含むSAMLアサーションを生成し、EMQX ダッシュボードに送信します。EMQX ダッシュボードは受信したSAMLアサーションを検証し、成功するとユーザーのセッション情報を作成してダッシュボードにログインさせます。SAMLはクロスドメイン認証および認可を可能にし、複数のアプリケーション間でシームレスな統合をサポートします。企業は既存のSAMLアイデンティティシステムにEMQXを容易に組み込み、ユーザーが安全かつ便利にEMQXサービスにアクセスできるようにします。
OIDCベースのSSO
EMQX ダッシュボードは、OIDCをサポートするアイデンティティプロバイダー(IdP)サービスとの統合を可能にします。OIDCはOAuth 2.0プロトコル上に構築されたアイデンティティレイヤーであり、ユーザーのアイデンティティ検証およびユーザー情報取得の標準化された方法を提供します。
OIDC SSOでは、ユーザーがアイデンティティプロバイダーで認証を行い、IDトークンにユーザー情報を含めてEMQX ダッシュボードに返します。EMQX ダッシュボードは受信したIDトークンを検証し、成功するとユーザーのセッション情報を作成してダッシュボードにログインさせます。OIDCはモダンでRESTfulな認証アプローチを提供し、最新のアイデンティティサービスとの統合を容易にします。
設定および利用のワークフロー
- 管理者がダッシュボードでSSOを設定・有効化します。設定完了後、EMQX ダッシュボードのログインページにSSOのエントリーポイントが表示されます。
- アイデンティティプロバイダー(IdP)側でユーザー情報を設定します。
- ユーザーはダッシュボードのログインページで異なるシングルサインオン方式を選択します。
- ログイン成功後、EMQX ダッシュボードはユーザー情報に基づいてセッションを作成し、ユーザーはダッシュボードにアクセスできます。バックエンドで
force_mfaが有効な場合、セッション発行前にTOTP認証の完了が必要です。 - 管理者はユーザーごとにロールや権限を割り当てます。ユーザーはログインを更新後、対応するリソースにアクセスできます。
SSOユーザー向けのMFA
EMQX 5.10以降、各SSOバックエンドでforce_mfaを有効にすることで、SSOユーザーにログイン時のTOTPによる二要素認証を必須化できます。詳細はSSOユーザー向けの強制MFAをご参照ください。
設定例
各SSO方式の設定例は以下をご覧ください。