2016-06-17 8 views
1

IDPが開始したSSO接続に対してRelayStateを渡す方法を教えてもらえますか? SSOは動作していますが、サービスプロバイダのアプリケーション内のページに深くリンクしたいと考えています。彼らは私たちにRelayStateを渡すよう指示しましたが、OktaのURLをどのようにフォーマットするのか分かりません。我々は、アプリケーションの埋め込みリンクを使用していると、クエリ文字列にRelayStateを追加したいと思います。Okta IDPが開始するRelayState

答えて

0

OktaでIdPによって開始されたSAMLを開始するには、?RelayState=というIDP SSO URLをappの埋め込みURLではなくURLに追加する必要があります。

管理コンソールのアプリケーションの[サインオン]タブの[設定の表示]をクリックすると、IdP SSO URLのURLを見つけることができます。

例(クエリ文字列をエンコードURLを忘れないでください):IdPのために https://thomas-kirk.oktapreview.com/app/salesforce/kqk5e18ZGRXWPQXOCNBQ/sso/saml?RelayState=%2F_ui%2Fcore%2Fchatter%2Fui%2FChatterPage

+0

私は、あなたが「アプリに埋め込まれたURLに追加された」という意味だと思います。 ところで、それはほとんどの場合です。場合によっては、FireFoxとSAML Tracerを使用してOktaの実際のSAML URL(必ずしもアプリの埋め込みURLではない)を取得し、URLは通常「/ sso/saml」で終わらなければなりません。あなたのアプリの埋め込みURLが "/ sso/saml"で終わっていない場合は、Oggaが使用する "本当の" URL(アプリの埋め込みURLまたはアプリの埋め込みURLのリダイレクト先)を確認するためにSAML Tracerを使用することをお勧めします。 –

+0

@RaphaelLondnerは誤植に感謝します!また、誤植は私が示唆していたことに混乱を引き起こしたと思います。アプリケーションがSAMLの場合、管理コンソールのアプリケーションの[サインオン]タブにある[セットアップの手順の表示]をクリックすると、IdP SSO URLが常に表示されます。私はアプリの埋め込みURLの使用を示唆していません。そこにリストされていない場合は(何らかの理由で)、ネットワークトレースを使用してURLを検出することに間違いはありません。 –

1

は(あなたが最初のIdPにログインとこ​​ろ、その後、SPにアクセス)SSOを開始し、あなたは一般的なSAMLの下でリレー状態を変更することができます edit default relaystate for IdP initiated sso

注:app埋め込みURLは、IdPが開始したSSOのみであり、SPによって開始されたSSOをIdP SSO URLとして使用しないでください。

ユーザがSPに直接アクセスすると(IdPに最初にログインせずに)、SPによって開始されたSSOが開始されます。これでIdP SSO URLに?RelayState=your_deep_linkを追加できるので、IdPにログインすると、リダイレクト先の深いリンクがSPに返されます。

@Thomas Kirk氏によると、管理コンソールのアプリケーションの[サインオン]タブの[設定の表示]をクリックすると、IdP SSO URLのURLを見つけることができます。

+0

OktaがSP-Initiated SSOフローを設定すると、そのSPによって設定されたrelayStateはどうなりますか? nullにリセットされるだけですか? (初心者の免責 - 私は今深層リンクがSAMLとどのように連携しているかを学んでいます) – anpatel

+1

Oktaで設定された「デフォルトのリレー状態」は、SPによって開始されたSSOフローでSPによって設定されたrelayStateには影響しません。 –

関連する問題