【问题标题】:Setting Up OAuth Authentication in SAP SuccessFactors在 SAP SuccessFactors 中设置 OAuth 身份验证
【发布时间】:2022-06-30 21:15:52
【问题描述】:

为了从成功因素 odata 服务中获取 oData,我正在尝试通过创建此 official guide 中报告的目标来在 SuccessFactors 和 SAP BTP 之间建立连接。

使用邮递员一切正常,但是,一旦我检查了先前创建的目的地的连接,收到的响应是 401: Unauthorized

在destination的配置下:

在这里你可以看到属性:

这里是响应:

我知道这是错误的,但出于好奇,我还创建了一个没有身份验证的不同目的地。然后直接从代码中我开发了三个嵌套的 ajax 请求。第一个提供断言,第二个是用户令牌,第三个是利用令牌获取 odata 的那个。可悲的是,响应总是 401: Unauthorized

下面是最后一个ajax请求的代码,其他两个都不错:

 // Validate access token
$.ajax({
    type: 'GET',
    headers: {
        "Authorization": "Bearer " + sAccessToken
    },
    url: '/oauth/validate',
    success: function(data){
        console.log("Success: ", data);
    },
    error: function(e){
        console.log(e);
    }
});

这里是请求头:

【问题讨论】:

    标签: ajax sap-successfactors


    【解决方案1】:

    所以不确定你的流程到底是怎样的。通常你会通过一个 SAP Approuter 连接到 BTP,它有一个xs-app.json,它定义了要使用的路由和目的地。然后,Approuter 会将内部 BTP JWT 与 Successfactors 的 SAML 断言交换。如果您想通过 BTP 目标服务为自己请求身份验证信息,您必须通过 HTTP 标头字段 X-user-token 向目标服务发送 valid BTP JWT,并作为响应您会得到返回 Successfactors OAuth 不记名令牌。

    See here

    希望对你有帮助

    问候 马蒂亚斯

    【讨论】:

      猜你喜欢
      • 2018-01-28
      • 2021-04-15
      • 1970-01-01
      • 2015-02-02
      • 1970-01-01
      • 2018-07-10
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多