処理する複雑なAND/OR
条件がある場合、ASP.NET Coreの認証ロジックを解決するのが難しいです。新しい承認モデルであるASP.NET Coreの複雑な条件(AND/OR)?
A & (B | C & D & E | C & F) - each condition consists of 1 or more checks
私は(policy-basedとresource-based含む)利用可能なすべての許可の種類を認識しています:私のAPIメソッドが許可を取得する前にチェックするための条件の一例。
一般に、新しい認可モデルを使用して、私はOR
条件についてどうやって行くのか分かりません。
私は、これはあまりにも不格好になりますので、(私の例では、私は(B) | (C & D & E) | (C & F)
のための3つの承認・ハンドラで1つの要件を作成することができないと思う十分ではありません、私はOR
条件の認可ハンドラを持つことができることを理解したが、私には感じています特に、ビジネスモデルのルールのためにこれらの条件が合わない場合は)。
認可ハンドラは互いに依存できないことも理解しました。また、私は、あるハンドラを複数の要件にもっと一般的に関連付けることはできないと思います。
これらの条件を処理する他の方法はありますか?このような問題に取り組むために、複雑さを小さな単純なものに分解する方法は一般的なルールですか?
ありがとう、どこから始めるのですか?任意のカスタム認証ミドルウェアのいくつかの良いリンク? – Learner
ここから始めてみてください:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware?tabs=aspnetcore2x – Leonid
そしてこれも始めるのがいいでしょう:https://dotnetcoretutorials.com/ 2017/03/10/creating-custom-middleware-asp-net-core / – Leonid