我们希望根据用户权限级别过滤/隐藏/清除特定的api模型属性。 模型本身不会有所不同。对那些人来说没有回报。
我在网上发现了很多不同的想法:
过滤特定角色的api模型属性的推荐方法是什么?
答案 0 :(得分:0)
很难用你提供的东西给出任何真实的细节,但一般来说,我会说这应该进入你的映射逻辑。利用视图模型/ DTO接受来自客户端请求的数据。然后将视图模型/ DTO中的数据映射到您的实体实例。在此过程中,您可以根据用户的角色/权限集决定应该或不应映射哪些属性。所有这些逻辑都可以分解为一个单独的类或类库。最终,客户发送并不重要。无论如何你无法控制。你只需要确保他们最终不能设置他们没有“访问”的任何属性,并且映射逻辑是一个很好的地方。