如何在SAP PO中存储和检索OAUTH令牌?

2020-08-22 19:46发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家您好, 在这种情况下,我...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家您好,

在这种情况下,我可能需要您的宝贵意见/建议:

"从WS客户端发送了新的访问令牌刷新令牌,SAP PO 使用发件人REST轮询每20分钟轮询一次(令牌每30分钟过期一次),然后 接收到的令牌需要存储

轮询输出类似:

{

" access_token ":" w05ssdc5-f441-492b-978f-82db88a21ccb2",

" refresh_token ":" 115s3dc5-f441-492b-978f-82db88a21ccb2",

"作用域":" givenName邮件随机数openid个人资料sn uid",

" token_type":"承载者",

" expires_in":1799

}

现在至关重要的是,我想将令牌存储在SAP PO中,然后检索以调用实际的业务接口。

这将帮助我避免进行多次API身份验证调用(也存在API限制)来运行实际的业务接口,而只需从查找表或某些属性或brm或任何属性中检索令牌即可。

通过值映射和NWA应用程序属性实现,但似乎在安全性和增量缓存问题方面存在局限性。 没有ECC或任何数据库系统甚至都无法进行查找。

期待更好的解决方案。 非常感谢!

此致

Rajesh PS

12条回答

嗨,拉杰什,

这是一个好问题。 我实际上以为REST接收器适配器本身会缓存令牌(有一个复选框)。 您是否不使用此适配器,或者它不满足您的要求?

我有一个类似的要求,但是对于SOAP API,我必须在SOAP Header中传递令牌。 我编写了一个UDF,它在第一个请求中获取令牌,并将其与时间戳一起存储在值映射缓存中。 在随后的请求中,它将加载时间戳并将时间戳与当前时间进行比较,并且仅在缓存的令牌已过期的情况下才提取新令牌(可以将有效期(分钟)配置为模块参数)。 我不认为VM存储有安全风险,因为对VM缓存监视器的访问仅限于PO管理员,并且该方案不包含机密数据。 但是也许也可以考虑对存储的令牌进行加密?

无论如何,您正在寻找另一种方法。 因此,如果您还不了解,这可能会有所帮助:我最近遇到了一篇有关该主题的非常有趣的文章,该文章似乎使用了一个称为MessageIDMapper的内部PO类,到目前为止我还不了解。 该解决方案利用这些方法将令牌存储到PO内部表中。 也许有帮助。

Philippe

一周热门 更多>