Okta

ServiceNow用SAML 2.0の構成方法

パラメーター値がお客様の組織に合わせてカスタマイズされていない場合、このセットアップは失敗する可能性があります。Okta管理コンソールを使用してアプリケーションを追加し、組織に固有の値を表示してください。

内容


対応機能

Okta/ServiceNowのSAML統合で現在サポートされている機能は次のとおりです。


記載されている機能の詳細については、「Okta用語集」をご覧ください。


前提条件

以下の手順に従って、前提条件のインストールを完了します。

  1. ServiceNowにシステム管理者としてログインします。

  2. フィルターナビゲーター(左上の入力フィールド)でプラグインを検索します。

  3. プラグインページでcom.snc.integration.sso.multiを検索します。

  4. 次のプラグインの[Install(インストール)]をクリックします。

    • Multiple Provider Single Sign-On Enhanced UI

    • Multiple Provider Single Sign-On

  5. フィルターナビゲーター(左上の入力フィールド)でマルチプロバイダーSSOを検索します。[Properties(プロパティ)]をクリックし、[Enable Multiple provider SSO(マルチプロバイダーSSOを有効化)][Yes(はい)]を選択します。

  6. [Save(保存)]をクリックします。

すべての前提条件が満たされました。次のSAML構成手順に進んでください。


構成の手順

  1. ServiceNowにシステム管理者としてログインします。

  2. フィルターナビゲーター(左上の入力フィールド)でマルチプロバイダーSSOを検索し、[Identity Providers(IDプロバイダー)]を選択します。

  3. [New(新規)]をクリックします。

  4. 作成するSSOの種類を尋ねられます。[SAML]を選択します。

  5. [Import Identity Provider Metadata(IDプロバイダーのメタデータをインポート)]ポップアップダイアログが表示されます。

  6. 次のメタデータURLをコピーして貼り付けます。

    Okta管理コンソールにサインインし、この値を生成します。

  7. [Import(インポート)]をクリックします。

  8. SAML設定が自動入力されたページが表示されます。

  9. [Default(デフォルト)]をチェックします(このSAML構成をデフォルトにする場合)。

    複数のIdPを有効にしている場合は、「複数のIdP」を参照してください(これはSPを起点とするフローに影響します)。

  10. 下にスクロールして[Encryption and Signing(暗号化と署名)]タブを選択します。

  11. Signing/Encryption Key Alias(署名/暗号化キーのエイリアス)saml2spに設定します(統合はデフォルトでsaml2spというエイリアスをルックアップします)。

    :SAML 2.0キーストアに別のエイリアス名を作成した場合はそれを入力し、それ以外の場合はsaml2spを使用します。

  12. Signing/Encryption Key Password(署名/暗号化キーのパスワード):SAML 2.0キーストアのパスワードを入力します。デフォルトでは、このパスワードはデフォルトのエイリアス名と同じです。

  13. [User Provisioning(ユーザーのプロビジョニング)]タブを選択し、[Auto Provisioning User(自動ユーザープロビジョニング)][Update User Record Upon Each Login(ログインごとにユーザーレコードを更新)]のチェックを外します。

  14. [Advanced(高度)]タブを選択します。

  15. ユーザーフィールドで、SAMLを使用してOktaに対して照合するServiceNowのユーザー属性を指定します。これは、デフォルトではuser_nameですが、ユースケースに応じてemailなどの属性と照合させるように設定できます。

    注:SAMLのNAME IDとして、SNOW側のユーザープロフィールのどのフィールドと照合させるかを選択できます。emailusername、またはユーザーレコードの別の任意のフィールドにすることができます。

  16. [Create AuthnContextClass(AuthnContextClassを作成)]をチェックします。

  17. シングルログアウトや強制認証などの高度な機能をオンにするときは、「高度な設定」で説明されている手順に従います。

  18. SAML接続をテストします。上にスクロールし、右上の[Test Connection(接続をテスト)]をクリックします。すべてのテストに合格できるように、誤って構成されている値を修正します。

  19. SAMLテストに合格したら[Activate(有効化)]をクリックし、セットアップしたばかりのIDプロバイダーを有効にします。

  20. これで完了です。


高度な設定

強制認証

  1. [Advanced(高度)]タブに移動し、[Force AuthnRequest(AuthnRequestを強制)]をチェックします。

  2. Oktaで、[Sign On(サインオン)]タブの[Disable Force Authentication(強制認証を無効化)]オプションのチェックが外れていることを確認します。

  3. [Update(更新)]をクリックします。

  4. これで完了です。


シングルログアウト

  1. 次の[Identity Provider's SingleLogoutRequest(IDプロバイダーのSingleLogoutRequest)]のURLを入力します。

    Okta管理コンソールにサインインし、この変数を生成します。

  2. 下にスクロールして[Encryption and Signing(暗号化と署名)]タブを選択します。

  3. [Sign Logout Request(サインログアウトリクエスト)]をチェックします。

  4. [Advanced(高度)]タブを選択し、[Protocol Binding for the IDP's SingleLogoutRequest(IDPのSingleLogoutRequestのプロトコルバインディング)]を次のように変更します。

    urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST

  5. [Generate Metadata(メタデータを生成)]をクリックします。

  6. 新しいメタデータタブが表示されます。

  7. X509Certificateの値を保存します。

  8. テキストエディターで次の形式のファイルを作成します。

    -----BEGIN CERTIFICATE----- [自分のx509証明書の値] -----END CERTIFICATE-----
  9. テキストファイルをservicenow_slo.certとして保存します。

  10. メタデータタブを閉じます。

  11. OktaでServiceNowアプリの[Sign On(サインオン)]タブを選択し、[Edit(編集)]をクリックします。

    • [Enable Single Logout(シングルログアウトを有効にする)]をチェックします。

    • 上記のステップ11で保存したservicenow_slo.certファイルをアップロードします。

    • [Save(保存)]をクリックします。

SPを起点とするSAML

ユースケースを決定します。

この時点でSAMLシングルサインオンは、OktaからServiceNowへのIdPを起点とするフローに構成されます。ユーザーがSPを起点とするフローからシングルサインオンできるようにする(ユーザーがServiceNowに直接アクセスしてログインする)には、次の手順に従います。

:SPを起点とするSAMLは、ServiceNowの個々のユーザーまたはユーザーの会社全体に対して有効にできます。ただし、特定のユーザーグループに対して有効にすることはできません。

  1. [Multi-Provider SSO(マルチプロバイダーSSO)]>[Identity Providers(IDプロバイダー)]に移動します。

  2. IDプロバイダーのレコードを右クリックし、[Copy sys_id(sys_idをコピー)]を選択します。

  3. sys_idの値を保存します。SPを起点とするフローでは、この値を使用する必要があります。

  4. 特定の会社の全ユーザーではなく、個別ユーザーを対象にSPを起点とするSAMLを有効にするときは、次の手順に従います。

    • ページ左上のファイルナビゲーターから[Users(ユーザー)]ページに移動します。

    • 任意のユーザーを選択してユーザーの詳細ページに移動します(どのユーザーを選択するかは重要ではありません)。

    • メニューアイコンで、[Configure(構成)][Form Design(フォームデザイン)]を順に選択します。

    • 左の[Fields(フィールド)]サイドバーから[SSO Source(SSOソース)]フィールドを選択し、ページ中央の[User [sys_user](ユーザー[sys_user])]テーブルにリストの最後の属性としてドラッグします。

    • [Save(保存)]をクリックします。

    • SPを起点とするSAMLを特定のユーザーを対象に有効にするには、フィルターナビゲーター[Users(ユーザー)]ページに戻ります。

    • 特定のユーザーを選択してユーザー詳細ページに移動します。

    • [SSO Source(SSOソース)]フィールドに「sso:」と入力し、マルチプロバイダーSSOプラグインを使って作成したIDプロバイダーのsys_idを貼り付けます。[Update(更新)]]を選択して完了します。

  5. SPを起点とするSAMLをユーザー単位ではなく、特定の会社の全ユーザーを対象に有効にするには、次の手順に従います。

    • ページ左上のフィルターナビゲーターから[My Company(自分の会社)]ページに移動します。

    • メニューアイコンで、[Configure(構成)]、会社の[Form Design(フォームデザイン)]を順に選択します。

    • 左の[Fields(フィールド)]サイドバーから[SSO Source(SSOソース)]フィールドを選択し、ページ中央の[Company [core_company](会社 [core_company])]テーブルにリストの最後の属性としてドラッグします。

    • [Save(保存)]をクリックします。

    • SPを起点とするSAMLを特定の会社の全ユーザーを対象に適用するには、フィルターナビゲーターから[My Company(私の会社)]ページに戻ります。

    • [SSO Source(SSOソース)]フィールドに「sso:」と入力します。マルチプロバイダーSSOプラグインを使って作成したIDプロバイダーのsys_idを貼り付けます。[Update(更新)]]を選択して完了します。

SPを起点とするSAMLの使用

この時点でユーザーはServiceNowで、SPを起点とするSAMLを2種類の方法で使用できる状態になっています。

1つの方法では、ユーザーはデフォルトのServiceNowログインページに移動して[Use external login(外部ログインを使用)]を選択します。ServiceNowのユーザー名を入力すると、SSOのためにOktaにリダイレクトされます。

もう1つの方法では、ユーザーは次のURLに直接移動します:https://[yourServiceNowDomain]/login_with_sso.do?glide_sso_id=[sys_id value]