我正在寻找这个的变体
@if (SignInManager.IsSignedIn(User) && User.IsInRole(Roles.Administrator))
{
<div id="editArticle">
但是我没有像在控制器中那样检查角色,而是像在控制器中那样来检查角色。
[Authorize(Policy = Policies.RequireAdmin)]
这似乎类似于这里提出的问题
我发现此链接可能会有所帮助:https : //docs.asp.net/en/latest/security/authorization/views.html
该页面上的示例:
@if (await AuthorizationService.AuthorizeAsync(User, "PolicyName"))
{
<p>This paragraph is displayed because you fulfilled PolicyName.</p>
}
在某些情况下,资源将成为您的视图模型,并且您可以按照与在基于资源的授权期间进行检查的方式完全相同的方式调用AuthorizeAsync。
@if (await AuthorizationService.AuthorizeAsync(User, Model, Operations.Edit))
{
<p><a class="btn btn-default" role="button"
href="@Url.Action("Edit", "Document", new {id= Model.Id})">Edit</a></p>
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句