保护 OData API 调用免受内部用户从内部进行数据欺骗



关于在 SAPUI5 应用程序中证券化 OData API 调用的问题。

在旧系统中,用户成功通过授权后,可以直接将具有用户 ID 和所需数据的请求从客户端发送到 OData API,而无需在服务器端进行任何其他安全检查。

我担心的是,系统中的任何授权用户都可以充当特洛伊木马,理论上欺骗他们自己的用户 ID 并以其他用户的名义执行某些操作。作为缓解措施,有一个选项可以通过引入服务器端包装器来封装来自客户端的 OData API,该包装器将在将请求转发到 OData API 之前执行发送方身份验证。

SAPUI5 平台中是否已经有一些开箱即用的方法来保护 OData API 的使用,以确保请求发送者无法伪造用户 ID 并以其他名称在系统中执行某些操作?

假设对OData服务的访问不是匿名的,您将在服务器上获得某种"当前登录的用户"信息。

现在,检查是否允许用户访问他请求的数据是服务实现的一项重要任务。

我将编造一些示例请求。

/UserData('ALICE')
/UserData('BOB')

服务实现必须检查是否允许请求用户获取数据。例如,Alice 将获取第一个请求的数据,以及第二个请求的 404。鲍勃反过来。超级用户可以获取两者的数据。

再举一个例子,这样的事情可能是可能的:每个员工都可以访问自己的数据,团队负责人可以访问团队中每个人的数据。

底线:服务必须检查是否允许用户访问数据。

最新更新