所以我可能会误解这里的声明架构,但如果我想添加一个特定部门(部门ID)的列表,用户可以编辑我可以创建声明:
new Claim("CanEditDepartment", "1")
但要扩展一下,如果用户可以编辑50/100部门,我是否需要50个声明呢?
new Claim("CanEditDepartment", "1")
new Claim("CanEditDepartment", "2")
new Claim("CanEditDepartment", "4")
new Claim("CanEditDepartment", "23")
等
答案 0 :(得分:0)
您使用的声明不正确。
您的声明应代表该人的身份。然后,您的应用应查看这些声明并将其映射到权限,这是用户可以对这些声明执行的操作。
传递大量索赔会减慢所有内容的速度和/或不可行。添加更多部门会发生什么?当您的应用拥有更多权限时会发生什么?你的问题中有JWT标记。你真的想在每个请求中传递这么大的令牌吗?