角色的Rest API字段限制

角色的Rest API字段限制,rest,microservices,Rest,Microservices,我正在设计一些RESTAPI,只是想知道如何限制前端用户访问某些资源字段 假设这是我们的用户资源: { "username" : "user", "email" : "email@example.com", "created_at" : "2011-06-13T21:56:36" } 很明显,电子邮件不应该被公开,也不应该返回给公众。然而,在管理部分,我想收到这个字段 有没有解决这些问题的策略 我的想法是: 为管理创建单独的端点 字段的身份验证机制 在REST API中创建适当的

我正在设计一些RESTAPI,只是想知道如何限制前端用户访问某些资源字段

假设这是我们的用户资源:

{
  "username" : "user",
  "email" : "email@example.com",
  "created_at" : "2011-06-13T21:56:36"
}
很明显,电子邮件不应该被公开,也不应该返回给公众。然而,在管理部分,我想收到这个字段

有没有解决这些问题的策略

我的想法是:

  • 为管理创建单独的端点
  • 字段的身份验证机制

    • 在REST API中创建适当的身份验证机制(i)并不简单,(ii)已经用多种语言完成了。除非出于学习目的,否则我建议不要重写

      根据您选择的后端语言,您可以选择一个框架来实现这一点。例如,在Python中,我建议Django使用Django Rest框架。

      您可以在数据库中创建新行“角色”,并在服务器端处理它们,API可以在JSON中指定角色,但服务器必须验证用户是否具有正确的角色