CSRF或跨站点请求伪造是一种攻击,大数据入门,当恶意网站或任何程序导致用户的web浏览器在用户当前已通过身份验证的受信任网站上执行不必要的操作时发生。
使网站或程序能够要求CSRF令牌调用它,是防止此攻击的方法之一。
托管在SAP网关上的服务需要CSRF令牌验证。在本例中,我们使用了一个网关URL进行测试。
使用网关服务的元数据URL获取CSRF令牌。
(获取CSRF令牌的URL因应用程序而异)。对于工作流服务,将"xsrf token"附加到URL。
例如:https://bpmworkflowruntimexxx.hana.ondemand.com/workflow-service/rest/v1/xsrf-token)
执行GET调用并传递以下标题:
响应,您将获得CSRF令牌作为标头。
复制上一次呼叫获得的CSRF令牌并粘贴到后一次呼叫的标头中,数据可视化大屏,如下所示。
如果验证不成功,您将得到403–禁止错误,这意味着CSRF令牌验证失败。在这种情况下,请检查用户是否具有触发URL的角色,并确保已正确地从上一次调用复制了CSRF令牌。如果没有错误,您将得到200或201响应。
现在让我们看看如何在SAP云平台集成中实现上述功能。
在这里,仅仅传递头是不够的。我们还必须处理会话cookies,这些cookies由任何REST客户机内部处理。
在上面的示例中,返利啦,我们可以查看正在创建的会话cookies,大数据技术,发发淘客,通过在Postman中添加拦截器加载项。
我们将使用groovy脚本实现检索cookies的逻辑。
出于测试目的,我在content修饰符中设置了负载
一旦部署并触发IFLOW,您可以看到在POST调用中设置cookie,在MPL日志中,也在Postman的响应头中。