所以我可能误解了这里的索赔体系结构,但如果我想添加用户可以编辑的特定部门(部门id)的列表,我可以创建一个索赔:
new Claim("CanEditDepartment", "1")
但在此基础上,如果用户可以编辑50/100个部门,我需要50个索赔吗?
new Claim("CanEditDepartment", "1")
new Claim("CanEditDepartment", "2")
new Claim("CanEditDepartment", "4")
new Claim("CanEditDepartment", "23")
等。
您使用声明不正确。
你的声明应该代表这个人是谁/什么。然后,你的应用程序应该查看这些声明,并将它们映射到权限,这是用户可以处理这些声明的方法。
传递大量索赔会减慢一切速度和/或是不可行的。添加更多部门后会发生什么?当你的应用程序拥有更多权限时会发生什么?您的问题中已标记JWT。你真的想在每个请求中传递这么大的令牌吗?