クレームベースのシングルサインオンを実装する場合、発行者はアプリケーションの特定のユーザーに割り当てるトークンのリストをどのように維持しますか?発行されたトークンが有効である期間はどうですか?あるアプリケーション1にトークンが付与され、ユーザーが別のアプリケーション2に移行したい場合、そのトークンが有効になる期間はありますか?
user1469030
質問する
76 次
1 に答える
0
ツールを定義しなかったので、それは独自のssoソリューションであり、その点で複数のソリューションがあると思います。
認証(日付チェック付きのsso自体)と承認(アクセスできるアプリ)の2つのステップがあります。
あなたが説明しているのは役割です。ロールは、ユーザーを特権のリスト(App1およびApp2へのアクセスなど、App3には関連付けられない)に関連付けます。これらは通常、データベースで定義されます。ただし、「userId」とトークンの有効期限は、通常、トークン自体の一部です。
たとえば、userId +タイムスタンプを取得して、暗号化することができます。サーバーとの通信のたびに、トークンが解読され、タイムスタンプの範囲が検証され(認証)、ユーザーIDが検索されて、役割が何であるか(承認)がわかります。
ラウンドトリップごとにトークンを再生成することをお勧めし、有効期間を短くします。
于 2012-08-23T07:48:49.073 に答える