2017-05-18 6 views
1

当社はフロントエンドとバックエンドで構成されるWebアプリケーション(Node.js)を管理しており、標準のユーザ名/パスワードログイン認証をサポートしています。いくつかのパートナーがSAML SSOのサポートを依頼しているため、エンドユーザーは再度ログインする必要なくそれぞれのポータルのリンクからWebアプリケーションにアクセスできます。私たちの非SAML Webアプリケーションに代わってSAML認証を処理するようにOktaを設定しますか?

質問:フロントエンドとバックエンドにSAML SDK /ライブラリを実装して、本格的なサービスプロバイダ(SP)にする必要がありますか?

Oktaのようなサードパーティの認証プロバイダを使用して、バックグラウンドでSAMLの脆弱性を処理し、エンドユーザーをアプリケーション(おそらくトークン(JWT?))にリダイレクトすることが可能ですか? Oktaのユーザー情報

Oktaのサイトやここで見つけられるすべてのものを読んだことがあります。確かな答えが見つからなかったので、そうすることができます。

答えて

1

あなたの質問で既に述べたように、2つの方法があります。

  1. あなたが入るしたくない場合は任意のサードパーティの認証プロバイダー

  2. を使用する必要はありません、その場合には、SPとしてあなたのアプリとSAMLログイン・フローをサポートするために、あなたのアプリケーションを更新SAMLのようなサードパーティプロバイダを使用すると、Oktaのような外部プロバイダが使用するIdPのSAML応答を消費し、そのアサーションをOpen IDトークン(JWT)に変換する仲介者として使用できます。この場合、OktaはあなたのWebアプリケーションへのIdP(Authorization server)として動作し、IDトークンを生成します。 あなたのアプリはOpen ID接続ログインフローを実装する必要があります。 http://developer.okta.com/code/javascript/okta_sign-in_widget_refを参照してください。

+0

ありがとう、この流れは、Oktaレベルでアプリをクリックするようなユーザーの操作がないように自動化できますか?理想的には、エンドユーザーが会社のポータル内のボタンをクリックすると、最終的には会社のアプリケーションにシームレスにログオンすることになります。 –

+0

あなたが言ったように、ユーザーがアプリのリンク/ボタンをクリックする必要があるため、ユーザーは自分のアイデンティティプロバイダーで既に認証されている必要があるため、「ユーザーの操作はありません」という状況はありません。彼がまだ認証されていない場合、IdPはユーザーが応答を生成するための情報を知る必要があるため、お客様のケースでSAML応答を生成することはできません。 –

+1

あなたのケースでは、外部の顧客が自社のネットワーク内で自分のアクティブなディレクトリの資格情報を持ってログインするとします。ユーザーがWebアプリケーションにログインしようとすると、Oktaはその要求をインターセプトし、SAML認証要求をIdP(Active Directory)に送信します。ユーザーがまだログインしていない場合、ADはユーザーにログインしてSAML応答を生成するように要求します。ユーザーがすでに自分のADアカウントにログインしていた場合、その経験はシームレスです。つまり、ユーザーはあなたのアプリにアクセスするために再度ログインする必要はありません。これが理にかなってほしい。 –

関連する問題