メインコンテンツまでスキップ
waffle.svg
Domo Knowledge Base

OpenID ConnectでSSOを有効にする

Version 1

 

はじめに

ユーザーは、Domoの内蔵認証システム、またはサポートされているプロバイダのシングルサインオン (SSO) ソリューションを使用して、Domoにサインインできます。DomoはこのようなSSOのソリューションとしてSAML(Security Assertion Markup Language)認証とOIDC(OpenID Connect)の2つを提供しています。この記事ではOIDCについて説明します。SAMLを使用した認証の詳細については、「DomoのシングルサインオンとDomoのシングルサインオンのSAMLを使用した設定について」を参照してください。

SSOを有効にするには、「管理者」のデフォルトのセキュリティロールか、「カンパニー設定を管理」が有効になっているカスタムロールが必要です。デフォルトのロールの詳細については「デフォルトのセキュリティロールリファレンス」を参照してください。カスタムロールの詳細については「カスタムロールを管理する」を参照してください。

ビデオ - OpenID Connect

 

OpenID Connectについて

企業組織では SAML(Security Assertion Markup Language)が主流のSSOプロトコルですが、多くの企業がOIDCに切り替えています。その理由は次のとおりです。

  • モバイルデバイスで、より効果的に機能する。

  • 外部ユーザーや非従業員に最適である。

  • OAuth 2に基づいているため、開発者にとってより扱いやすい。

  • 比較的設定しやすく、取得価格が低いため、企業規模を問わずSSOを使えるようになる。

  • Azure Active Directory、Auth0、Google G Suite、Okta、OneLoginなどのアイデンティティシステムでサポートされている業界標準である。

OIDCはAzure ADなど、一部のIdPのネイティブ機能となっています。それ以外の場合は、Okta、Google、Pingなどの統合システムが必要です。

Azure Active Directoryなどのサポート対象のアイデンティティプロバイダを利用すると、SSOを簡単に設定できます。  

SAMLとOIDC接続は同時に実行できます。その結果、内外のユーザーを区別しやすくなります。Domoのアクセスに使用するSSOソリューションとDomo Embedに使用するSSOソリューションの分離にも役立ちます。たとえば、Domoでの従業員のアクセス管理にはSAMLを使用し、ほかのウェブサイトやアプリケーションへのカード埋め込みにはOIDCを使用できます。 

両方のSSO方式を使用していても、引き続きDSO(直接サインオン)を使用できます。現在、SAMLとOIDCの両方に適用する場合も、[管理者]、[セキュリティ]、[シングルサインオン(SSO)] でDSOを設定する必要があります。DSOの詳細については、「DomoのシングルサインオンとDomoのシングルサインオンのSAMLを使用した設定について」を参照してください。

OIDCを設定するにはDomoで「管理者」セキュリティプロファイルを持っている必要があります。IdPへの管理者アクセスも必要です。  

IdPでメタデータのインポート(ほぼすべてのIdPに相当)が許容される場合は、この方法でOIDCメタデータをDomoにインポートできます。その結果、設定が自動的に行われるようになるため、設定が簡単になります。それ以外の場合は、認証リクエストエンドポイントURL、クライアントID、クライアントのシークレットなどを入力する必要があります。 

内外のユーザーに対応する

大企業は多くの場合、正社員以外にもDomoへのアクセスを必要とする従業員を抱えています。これらのユーザーについてDSOを使用したサインインを許容することもできますが、ユーザー数が多い場合、この方法では手間がかかります。より良いソリューションは、OIDCを使用して、外部ユーザー専用に2つ目のIdPを導入する方法です。この方法では、コンテンツを正社員以外とも共有できます。認証を経ずにDomoに移動したユーザーは、デフォルトでSAML IdPに送られます。

OpenID Connectを構成する

[管理者設定] で [セキュリティ]、[OpenID Connect(SSO)] の順に移動し、必要な情報を入力して、適宜高度なオプションをオンにして、OpenID Connectを設定し、有効にします。 

このインターフェースではデフォルトで、メタデータ入力を使用した設定が想定されています。そのため、必要な入力情報は、お使いのIdPで生成したクライアントIDとクライアントのシークレット、既知(well-known)の設定のURLのみです。既知の設定では、IdPのメタデータがすべて取り込まれます。つまり、トークンエンドポイントURLやパブリックキーなど、ほかの情報は一切入力する必要がありません。ほぼすべてのIdPには既知の設定が対応しています。お使いのIdPに対応する既知の設定が不明の場合も、多くの場合はGoogle検索(Azureに対応する既知の設定を検索する場合は「Azure well-known config」などと入力します)で見つかります。 

お使いのIdPに対応する既知の設定がない場合(社内で独自のIdPを作成している場合は通常該当する)は、IdPのメタデータを手動入力する必要があります。具体的操作としては、Domoの [OpenID Connect(SSO)] タブで [メタデータ入力] をクリックしてから、所定のフィールドにIdPの情報を入力します。

お使いのIdPのメタデータを使用してOpenID Connectを設定するには

  1. [その他][管理者設定]、[セキュリティ]、[OpenID Connect(SSO)] の順に選択します。

  2. [既知の設定] フィールドに、お使いのIdPに対応する既知の設定のURLを入力します。
    既知の設定の詳細については、このセクションのここまでの部分を参照してください。

  3. [クライアントID] フィールドにお使いのアプリのクライアントIDを入力します。

  4. [クライアントシークレット] フィールドにお使いのアプリのクライアントシークレットを入力します。
    これらの認証情報はいずれも、IdPのアプリを作成するとき生成されます。

  5. (条件付き)IdPでDomoからのアサーションのエンドポイントのURLが要求された場合は [OpenID ConnectアサーションエンドポイントURL] の横にあるクリップボードのアイコンをクリックしてから、コピーしたURLをIdP設定の適切な場所にペーストします。

  6. (オプション)詳細設定を有効にする場合は、該当するチェックボックスをオンにします。
    詳細設定については、次のセクションで説明します。

  7. 「OIDCを有効にする」と表示されたトグルをオンにします。

  8. [設定を保存] をクリックします。

手動設定でOpenID Connectを設定するには、

  1. [その他][管理者設定]、[セキュリティ]、[OpenID Connect(SSO)] の順に選択します。

  2. [手動で入力] をクリックします。

    oidc_manual_entry_link.png

  3. すべてのフィールドにIdPで確認した情報を入力します。

  4. (条件付き)IdPでDomoからのアサーションのエンドポイントのURLが要求された場合は [OpenID ConnectアサーションエンドポイントURL] の横にあるクリップボードのアイコンをクリックしてから、コピーしたURLをIdP設定の適切な場所にペーストします。

  5. (オプション)詳細設定を有効にする場合は、該当するチェックボックスをオンにします。
    詳細設定については、次のセクションで説明します。

  6. 「OIDCを有効にする」と表示されたトグルをオンにします。

  7. [設定を保存] をクリックします。

詳細設定

詳細設定は、メタデータ入力での設定と手動での設定の両方で使用できます。設定を保存するまで、これらの設定は適用されない点に注意してください。

利用可能な詳細設定は次のとおりです。

設定

説明

招待された方のみDomoにアクセスを許可

Domoでは、IdPを介して訪れたユーザーのマッチングのみ行い、新規作成はしません。

ログアウト時にユーザーを次のURLに誘導

Domoからログアウトしたユーザーを誘導するURLを指定できます。

アイデンティティプロバイダからグループをインポート

アイデンティティプロバイダのグループを取り込めます。 

混在モードログイン

この設定を有効にすると、IdPの認証を受けずにDomoにアクセスするユーザーはユーザー名とパスワードの入力を促され、IdPを介したDomoの認証を通じてアクセスするユーザーは認証情報を入力しなくてもアクセスできます。

Domoのサインイン画面を表示/アイデンティティプロバイダにスキップ

ユーザーにDomoのログイン画面を表示するか、ユーザーをIdPにリダイレクトするかを選択できます。