2016-05-30 3 views
1

のためのCASを使用する別のアプリケーションは、我々は二つのアプリケーションできる認証</li> <li>外部アプリケーションのCASを使用してSSO

  1. のApp1を持っていると言うことができます秘密鍵暗号化された値へのアクセスとユーザーIDを渡すアプリケーションは、いくつかのカスタム認証
  2. をAPP2

idが 'user1'のユーザー。このユーザーはApp2にログインすると、ユーザーがApp1にログインできるリンク(App1のリンク)を表示します。ユーザーが一度クリックするとApp1にリンクする必要があります。

App2は、秘密鍵で暗号化されたユーザーIDのみをApp1に渡します。パスワードは渡されません。

ユーザー--------->外部App2の-----暗号化されたユーザID -----> CAS ===== App1の

を実装することが可能これは、などリクエストにはパスワードが含まれていませんか? CASとSSOで初めて作業しているので、アプローチに私を導いてください。

お手数をおかけします。

私たちはCAS3.4とSpring3の統合を使用しています。

答えて

1

CASが認証されるため、あなたのApp1ではパスワードを確認する必要はなく、リンク(APP1)をクリックすると他のAppレベルでアクセストークンとユーザー名を渡す必要がありますあなたのApp1はCASライブラリを使用しなければなりません。それらのライブラリは、リクエストが信頼できるサイトかどうかをチェックし、アクセストークン(ここではサービスチケットとプロキシ許可チケットと呼んでいます)が有効かどうかを確認します。これらの2つのチェックが行われ、認証機能/メソッドが実行されます(このように設定する必要があります)。ユーザー名がデータベースに存在する場合、セッションを作成してログインする必要があります。機能は技術と要件に基づいて異なる場合があります。

+0

迅速な対応のためにカマールに感謝します。 App2は外部アプリケーションなので、どのようにアクセストークンを取得できますか?アクセストークンを取得するために、CASサーバー(App1によって使用される)に要求を送信する必要がありますか? –

+0

はい、App1とApp2の両方をCASサーバーで構成する必要があります –

+0

ユーザーはApp1とExternal App2で異なるパスワードを使用します。私がApp2からアクセストークンを取得するために間違っていない場合は、App1とは異なるユーザーIDとパスワードを渡す必要があります。この状況をどのように処理するのですか?お知らせ下さい。 –

関連する問題