【发布时间】:2023-01-20 06:35:44
【问题描述】:
我一直在尝试向我的项目添加授权和权限。
我已经设法生成这样的数据库表:
AspNetRoleClaims
AspNetUserClaims
AspNetRoles
AspNetUsers
ApsNetUserRoles
这些表是使用 PMC 生成的,我在使用 blazer web assembly 模板后提交了这些表。
在 PMC 中我输入:
update-database
生成了上面描述的那些表。
所以当我使用:
<AuthorizeView Roles="Admin">
<div class="wrapper">
<ContentLayout Title="@_greeting">
<Card>
<CardContent>
Hi @context.User.Identity!.Name
</CardContent>
</Card>
</ContentLayout>
</div>
<div>
</div>
</AuthorizeView>
效果很好,只有管理员可以查看内容。
现在我的问题是如何添加基于策略的授权,我已经搜索以找到解决方案,但我尝试了示例但没有成功。
我想做的是找到一种无需任何逻辑即可添加基于策略的授权的方法,因此它内置于此表中,这可能吗?
或者有人可以分享我如何实现基于策略的授权吗?
这些是表中的数据:
政策正在尝试什么:
<AuthorizeView Policy="CanBuy">
<div>hello</div>
</AuthorizeView>
但我得到错误:
【问题讨论】:
标签: blazor-webassembly claims-based-identity