2017-05-24 4 views
0

私は現在、私の.NETのコアWebAPIのにJWTトークン認証を統合することに取り組んでいると、正常Startup.CSでそのように.NETコアJWTBearerAuthentication拡張

app.UseJwtBearerAuthentication(new JwtBearerOptions 
     { 
      ... 
     } 

を認証ミドルウェアを設定している私がしたいと思います私のカスタムクレーム検証ロジックを挿入しますが、論理をどのように拡張したり注入したりするのかを説明する有用なドキュメントは見つかりませんでした。

特定のユースケースは、ブラックリストJTIsのリストに対して着信トークン内JTIクレームをチェックすること、および見つかった場合は、トークンを拒否するであろう。

はこれまでのところ、私は上記のロジックを持つ別のミドルウェアを書いてUseJwtBearerAuthentication後にそれを挿入し、私はそれが正しいアプローチであるかどうかはわからない試みました。私は以前にJTIを検証するためにUseJwtBearerAuthenticationミドルウェアに建ての間に挿入されるミドルウェアを書いた

答えて

0

はブラックリストに対して主張したが、適切な応答を指示しませんでした。

は、私はそれ以来、カスタム認可ポリシーハンドラにロジックを移動しました。その後、私はコントローラに[Authorized(Policy = [PolicyName])]アノテーションをタグ付けしました。

私はこれを処理する最善の方法であるとは確信していません。あなたがどのようにこの作業を行ったのか、特に認証ミドルウェアの拡張を聞いて、別のカスタム検証ミドルウェアかもしれない?


はここでカスタム認可ポリシーハンドラの作成に取り掛かる方法は次のとおりです。

Microsoft - Custom Policy-Based Authorization


私が入ってくるJWTトークンを無効にするためのミドルウェアの可能性を探ってきました。しかし、リクエストが短絡すると、ステータスコードと応答メッセージは、ミドルウェアがデフォルトのJwtBearerAuthenticationミドルウェアに戻ってきて、ステータスと応答メッセージに影響を与えるため、影響を受けることに気付きました。

関連する問題