0

除了在每个服务实现方法中手动编写代码以检查是否允许请求之外,是否有标准方法可以更改用户的运行时权限,以便能够调用 SAP 网关服务的某些 odata 资源?

例如,基于定制中的一些设置,应该禁止下面/foo/bar用户的odata路径,即应该为用户产生HTTP 403 ,但应该是。xHTTP GET/POST/DELETE <host>:<port>/foo/testHTTP GET/POST/DELETE <host>:<port>/bar/testxHTTP GET/POST/DELETE <host>:<port>/somethingOK

有没有一种方法可以在一个地方进行控制,而不是要求在每个实现 odata 请求的方法中实现检查?

4

1 回答 1

2

授权检查的正确位置是在后端方法中。例如,任何授权错误都应填充回服务并产生 403。

如果您出于某种原因不希望这样做,您可以编写自己的 HTTP 处理程序并将其插入 SICF 以在所有路径上调用。

标准角色设置仅允许访问或不允许访问服务,您所指的“模式”访问权限缺失。但我真的不明白你为什么想要它?它会让你的 Odata 服务对消费者来说有点不可预测,不是吗?

于 2015-08-16T17:16:08.683 回答