使用版本:SAP9.0 B1
背景
我们希望为外部用户提供一个简单的身份验证web表单,并且希望使用SAP B1用户管理来管理用户(当然还有密码)。
由于我们无法找到密码哈希背后的算法,我的老板也考虑使用一个与SAP用户不同的字段,比如Mobile Device ID,并在那里存储一个密码。但是,将它作为纯文本存储在那里,以及其他用户可能以各种形式看到它,对我来说似乎是一个非常糟糕的想法,这就是为什么我在这里询问想法的原因。
这里最好有人知道散列算法,盐是否分开存储,等等:)
信息
web应用程序可以访问存储SAP数据的SQL数据库,但不能与SAP“直接”通信。
实际问题
发布于 2014-07-16 12:15:37
这是一个令人兴奋和困难的问题。
我试过一些东西,但我没有找到可行的解决办法。但在这里我的结果也许会有帮助:
密码散列似乎是带有salt的SHA1。
密码盐存储在OUSR.STData中。还有一个字段OUSR.NoSTPwdNum,但我不知道它是如何一起工作的。
将这些字段描述如下:
我试过一些方法,但都没有用。例如,在密码前后加盐、散列密码和加盐、散列/盐作为大写和小写等。
发布于 2018-08-29 16:16:57
虽然我不知道算法是否为公众所知,但有一个解决办法:您可以使用所提供的用户名和密码,并尝试使用这些凭据打开到DI-API的连接。通过这种方式,您可以确保SBO施加的所有访问约束实际上都得到了遵守(就像不活动的用户一样)。
https://stackoverflow.com/questions/23384786
复制相似问题