gpt4 book ai didi

html - SAPUI5 和登录 token /SSO?

转载 作者:太空宇宙 更新时间:2023-11-04 14:21:56 25 4
gpt4 key购买 nike

我开始使用 SAP's SAPUI5 framework ,并且我正在尝试使用登录 token (MYSAPSSO2) 进行单点登录,但我看不到任何可以获取 token 或将 token 附加到 OData HTTP 请求的地方。我在上面链接的博客文章中的示例使用了用户名/密码但不使用 token :

// Specify the SAP Gateway SalesOrder service as an OData model
var salesOrderService =
"https://gw.esworkplace.sap.com/sap/opu/sdata/IWFND/SALESORDER",

// The SalesOrder service requires authentication
// get the username/password from the SDN page.
username = "[username]",
password = "[password]",

// SAP Gateway only supports XML, so don't use JSON
asJson = false,
salesOrderModel = new ODataModel(salesOrderService, asJson, username, password)

即使我查看 SDK 中提供的 ODataModel.js 文件,构造函数不采用登录 token :

/**
* Constructor for a new ODataModel.
*
* @param {string} sServiceUrl required - base uri of the service to request data from
* @param {string} [bJSON] (optional) true to request data as JSON
* @param {string} [sUser] (optional) user
* @param {string} [sPassword] (optional) password
*
* @class
* Model implementation for oData format
*
* @extends sap.ui.model.Model
*
* @author SAP AG
* @version 1.2.0
*
* @constructor
* @public
*/

我很好奇(虽然因为它是新的,如果还没有人听说过我也不会感到惊讶)是否有人对使用 SAPUI5 的 SSO/MYSAPSSO2 登录 token 有任何经验。

最佳答案

我是您提到的博客的作者。让我尝试回答您的问题。

您在 3 月 15 日发表的评论描述了一种代理方法。您应该尝试做的是,一旦您的代理收到 SSO token ,您应该使用 SET-COOKIE header 将其传递给客户端。

因此,当您成功向 SAP 进行身份验证时,您将获得一个 SSO token 和响应的 HTTP header 。

例如

设置 cookie:MYSAPSSO2=AjQxMDM.....BABhHAFcA%3d%3d;路径=/;域=esworkplace.sap.com

您的代理应该简单地将其传递给客户端的浏览器并将域名更改为代理的域名,否则客户端将不会使用它。

设置 cookie:MYSAPSSO2=AjQxMDM.....BABhHAFcA%3d%3d;路径=/; domain=yourproxydomain.com

下次浏览器向您的代理发出请求时,它会自动在请求 header 中包含此 session cookie,如下所示:

Cookie:MYSAPSSO2=AjQxMDMBABhH......%2fjmaRu5sSb28M6rEg%3d%3d

您的代理可以从 HTTP 请求 header 中读取该 cookie 并使用它进行调用。

希望对您有所帮助。

关于html - SAPUI5 和登录 token /SSO?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9587903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com