asp.netコアでカスタムauthorizeattributeを作成して、簡単な声明の要件を満たす
を書き換えることでカスタムbool AuthorizeCore(HttpContextBase httpContext)
を作成できます。ただし、このメソッドはには存在しなくなりました。 AuthorizeAttribute
AuthorizeAttribute
カスタムを作成する現在の方法
AuthorizeAttribute
です。この新しい方法の基本的なアイデアは、新しい機能を使用して「戦略」を指定することです。以上)。
[Authorize]
戦略的設計はフレームワークの優れた補足であり、ASP.NETセキュリティのコアチームはこれを賞賛する必要があります。言い換えれば、それはすべての状況には適していません。この方法の欠点は、最も一般的なニーズに便利なソリューションを提供できないことです。指定する必要がある特定のコントローラーまたは操作ステートメントを単純に主張するだけです。アプリケーションに、単一のRESTリソース(「Cancreaterordordord」、「CanupDate Order」、「CandeLeteOrder」などでCRUD操作を管理するための数百の個別のアクセス許可がある場合、新しい方法には戦略名と宣言が必要でなければなりません名前を繰り返します - 1つのマッピング(例:[Authorize(Policy = "YouNeedToBe18ToDoThis")]
)、ランタイム中にこれらの登録を実行するコードを記述します(たとえば、データベースからのすべてのタイプの宣言を読み、サイクル内の上記の呼び出しを実行します)。ほとんどの場合、この方法の問題は、それが過剰なオーバーヘッドであることです。 Startup.cs
options.AddPolicy("CanUpdateOrder", policy => policy.RequireClaim(MyClaimTypes.Permission, "CanUpdateOrder"));
以下は、の実装です。
以上が単純な請求要件のためにASP.NETコアでカスタムauthorizeattributeを作成する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。