Я совершенно новичок в использовании claims
в ASP.NETIdentity
и хочу получить представление об оптимальных методах использования Roles and/or Claims
.Лучшие практики для ролей против претензий в ASP.NET Identity
После всего этого чтения, я до сих пор есть такие вопросы, как ...
Q: У нас больше не использовать роли?
В: Если да, почему все еще предлагаются роли?
В: Должны ли мы использовать только претензии?
Вопрос: Должны ли мы использовать Роли & Претензий вместе?
Моя первоначальная мысль заключается в том, что мы «должны» использовать их вместе. Я вижу Claims
в качестве подкатегорий для Roles
, которые они поддерживают.
НАПРИМЕР:
Роль: Учет
Требований: CanUpdateLedger, CanOnlyReadLedger, CanDeleteFromLedger
Q: Они предназначены для быть взаимоисключающими?
Вопрос: Или лучше обратиться к претензиям ТОЛЬКО и «полностью квалифицировать» требования?
Вопрос: Каковы лучшие практики здесь?
Пример: Использование Роли & претензий Вместе
Конечно, вы должны написать свою собственную логику атрибутов для этого ...
[Authorize(Roles="Accounting")]
[ClaimAuthorize(Permission="CanUpdateLedger")]
public ActionResult CreateAsset(Asset entity)
{
// Do stuff here
return View();
}
Пример: Полностью Отборочные Ваши требования
[ClaimAuthorize(Permission="Accounting.Ledger.CanUpdate")]
public ActionResult CreateAsset(Asset entity)
{
// Do stuff here
return View();
}
Итак, я столкнулся с той же проблемой, как вы ее решаете и как вы можете разрешить разрешение в приложении? – Loai