REST API - 如何按角色限制对资源的访问?

时间:2016-12-29 02:31:19

标签: rest api http access-control

我们假设我正在为公司FooBar创建一个销售管理工具。

FooBar有一份客户列表,分为四个不同的区域。北,南,东,西。

每个地区的销售经理应该能够访问其特定区域的客户,但不能访问其他地区。还有一个全国销售经理可以访问所有客户。

公开客户资源的最佳方式是什么?是否只有/api/customers的单一访问点才能返回该管理员可以访问的客户?根据请求者的不同,URI返回完全不同的数据集是否正常?

/api/region/customers方法似乎是错误的,因为区域可能会发生变化,客户可以在区域之间移动,并且需要多次请求才能获得国家主管的主列表。

我所描述的是否有模式名称?我尝试过搜索但我不能使用正确的名字。

1 个答案:

答案 0 :(得分:1)

由于/api/customers的请求对于不同的用户会有所不同(Cookie标头会有所不同,如果您使用Cookie进行会话处理),则返回不同的数据完全没问题。