0

カスタム AuthorizeAttibute (グローバルに登録) 内で、コントローラーのタイプと呼び出されるアクションに基づいて承認を適用する際に、セキュリティ上の問題や落とし穴の可能性はありますか?

例 (実際のコードではない)

string controllerFullName=_filterContext.ActionDescriptor.ControllerDescriptor.ControllerType.FullName;

string minRequiredRole = GetControllerMinRequiredRole(controllerFullName);

if(User.MeetsRoleRequirement(minRequiredRole))
{
     //give access
}
else
{
    //no you're not allowed
}
4

1 に答える 1

1

主な問題は認証キャッシングに関するものです。そのため、知っておくべきことがいくつかあります。私がここに投稿したリンクをチェックしてください:

AuthorizeAttribute の作成 - 何を知る必要がありますか?

既存の属性のコードと、それがキャッシュを処理する方法を調べて、ベース属性が防ぐのと同じ問題を引き起こしていないことを確認してください。

于 2012-02-09T06:14:37.770 に答える