0

私はこの奇妙な状況に対処しています。ユーザーがログインすると、ClaimsIdentity の名前要求のみを設定できます。次に、ユーザーはリストから特定の診療所を選択します。選択内容に基づいて、ロール クレームを設定しました。しかし、私が気付いたのは、ASP.NET Url Authorization は、PostAuthenticateRequest で設定されていないため、これらのロール クレームを単純に無視することです。これらの追加のクレームを設定するためにフックできる他のイベントはありますか?

4

1 に答える 1

0

私はこのアプローチで行きます。

  1. クリニック ID を通常のセッションに保存する
  2. そのセッション エントリをチェックする独自のClaimsAuthenticationManagerを実装し、存在する場合は、着信 ClaimsIdentity を新しい Role クレームで水和します。

Clinic が選択されると、ユーザーを別のコントローラー/アクションにリダイレクトし、次の要求で ClaimsAuthenticationManager が飛び込んで新しいクレームで ID を変更し、ユーザーにロールを提供します。

于 2013-09-21T08:09:34.430 に答える