Я начинаю использовать авторизацию на основе утверждений для своего проекта веб-API asp.net.
В моих проектах пользователи могут иметь разрешение на редактирование объектов. Но у пользователя есть разрешение на редактирование entity1
, но не entity2
. Формально он должен уметь делать POST entities/1
, но не POST entities/2
.
Думаю, как добавить эту информацию в Claims. Я вижу 2 подхода:
Добавить Претензию со значением, содержащим идентификатор объекта:
this.AddClaim(new Claim("permission", "entity/1/edit")); this.AddClaim(new Claim("permission", "entity/42/edit"));
Добавьте претензию с типом
edit
и значением является идентификатор объекта:this.AddClaim(new Claim("entity/edit", "1")); this.AddClaim(new Claim("entity/edit", "42"));
Я признаю, что я что-то упустил в концепции Претензий. И, возможно, есть лучший способ добиться этого.
.AddClaim(new Claim("claimType", "some important claim value"));
- person Jazb   schedule 11.12.2018