サービスポータル:マルチプロバイダー SSO を有効にすると、エンドユーザーがすでにログインしている場合、OKTA を介して navpage.do にアクセスできるIssue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } お客様がマルチプロバイダー SSO を有効にしている場合、ServiceNow インスタンスへの既存のログインセッションがあるときに Okta の ServiceNow タイルをクリックすると、ロールのないエンドユーザーがサービス ポータルではなく、OKTA の IdP 開始ログインを通じてプラットフォーム UI の navpage.do にリダイレクトされる可能性があります。 再現手順: SSO 対応インスタンスに移動します。 これにより、ユーザーに OKTA ログインのプロンプトが表示されます。エンドユーザーの認証情報 (snc_internal ロールを持つユーザー) を使用して OKTA にログインします。ログインに成功すると、OKTA ホームページが表示されます。OKTA ホームページで、「instance_name」タイルをクリックします。これにより、ユーザーは https://instance-name.service-now.com/sp にリダイレクトされます 次にこのタブを閉じて、OKTA ホームページに戻ります。同じ「instance-name」タイルをもう一度クリックします。ユーザーは https://instance-name.servicenow-now.com/navpage.do にリダイレクトされます。 想定される動作: エンドユーザーは、OKTA タイルをクリックした際、2 回目およびそれ以降も毎回、サービス ポータル https://instance-name.service-now.com/sp に移動する必要があります。 実際の動作: 最初のログイン時にのみ「/sp」ポータルに正しくリダイレクトされます。 Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } ServiceNow Utah およびそれ以前のリリース。この問題は、Vancouver リリースで修正される予定です。 Cause<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } この動作の原因は、SSO IdP が (ログイン後にユーザーを送信する場所をインスタンスに指示する) relaystate パラメーターを設定しない場合、インスタンスがデフォルトで /navpage.do に設定されるという現在の制限によるものです。ユーザーが既にインスタンスにログインしていて、その後 Okta の「タイル」をクリックすると、インスタンスはユーザーを再認証しないため、relaystate パラメーターは使用されません。これは PRB1254142 に記載されています。 Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } 修正 PRB1254142 の修正は Vancouver リリースに含まれます。Vancouver 以降では、システムプロパティ glide.authenticate.honor.relaystate.for.loggedin.sessions を true に設定すると、relaystate パラメーターが空のときにシステムプロパティ glide.entry.first.page.script のスクリプトが確実に実行されます。 ワークアラウンド IdP が開始するセッションで常に Relaystate がオンになるように Okta を設定する Okta は、IdP 開始セッション時に relaystate パラメーターを常に設定するよう構成できます。これにより、Okta の ServiceNow タイルをクリックしたユーザーは誰でも (既存のセッションがない場合の認証を含め、IdP が開始したセッションがトリガーされ)、relaystate の URL にリダイレクトされます。ただし、これはすべてのユーザーに適用されるため、柔軟性はありません。 設定するには: ServiceNow インスタンスで、システムプロパティ glide.authenticate.honor.relaystate.for.loggedin.sessions を作成または設定し、型を true|false、値を true にします。Okta 管理インターフェイスで、[アプリケーション] -> [アプリケーション] -> (関連する ServiceNow UD アプリをクリック) -> [Sign On (サインイン)] -> [編集] に移動します。 UI スクリプトのワークアラウンド このタイプの問題に関する柔軟なワークアラウンドは、UI スクリプトを作成することです。この UI スクリプトは、ログインしているユーザーのロールを確認し、ロールがない場合はサービスポータルにリダイレクトすることを目的としています。 UI スクリプトのガイドラインの一部: グローバルとしてマークされていることを確認します。([グローバル] チェックボックスをオンにします)これは本番環境に実装する前に、必ず準本番環境でテストする必要があります。このワークアラウンドは開発から提供されたものではないため、完全にはサポートされていません。開発が判断を下すまでの一時的な救済を提供するものとして作成されています。以下の UI スクリプトでは、instance-name をお客様のインスタンス名に置き換え、/sp をお客様のポータル名に置き換える必要があります。お客様は、上記 4 の内容を考慮して、各インスタンスごとにこのスクリプトを作成する必要があります。 使用できるサンプル UI スクリプトを次に示します。 addLoadEvent(ESSUserRedirect); function ESSUserRedirect() { if (g_user.userName != 'guest' && !g_user.hasRoles()){ if(document.URL.indexOf('sp')==-1) { if(document.URL.indexOf('instance-name.service-now.com')>=0){ top.location = "https://instance-name.service-now.com/sp"; } }} } Related Links<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } https://community.servicenow.com/community?id=community_blog&sys_id=cbcda2e9dbd0dbc01dcaf3231f961949