永远不需要在ABAP系统中存储密码..现在是时候学习新的东西......
我需要存储一个密码,我在ABAP系统上使用它来连接到另一个系统,所以我不能存储(单向)哈希。
我遇到了一些功能模块,如FIEB_PASSWORD_ENCRYPT
(使用硬编码密钥)或存储密码的base64编码版本的一些建议(gosh!)=>两者都只会阻止任何人“快速读取”密码,如果它打开屏幕,不阻止任何人偷走它。
我也遇到过SECSTORE
(SAP Help Link),它显然只能由SAP组件使用,而不能通过自定义应用程序使用。
基本上,我的需要是
我想,那里必须有一些东西可以用于那个目的......
更新为什么我需要:
免责声明:我目前正在讨论是否可以将其转换为基本身份验证,这既不是更多也不是更安全(标题与正文)。但是使用基本身份验证,我可以使用目标配置,而后者又使用SECSTORE。这个讨论是一个很长的故事,因为涉及到许多方,并且对系统的访问是多层次的......
您可以使用SSF_KRN_ENVELOPE函数进行加密,使用SSF_KRN_DEVELOPE进行解密。它使用RSA标准,因此结果可能很大。我更喜欢在https://github.com/Sumu-Ning/AES上使用ABAP AES类
这些函数使用系统证书,AES库需要IV和密钥,因此如果用户有调试或开发人员授权,他就可以获得它。
正确的方法是使用标准的沟通方式。例如,在SOA管理器中使用带有基本身份验证和保存密码的SOAP客户端。在SM59配置中,也可以使用基本认证和http和https协议。
我在这里发布的选项是没有加密的选项,但似乎“非常安全(tm)”。随意评论
这意味着,在高效的ABAP环境中,只有至少具有以下权限之一的人才能访问PW(如果我错了,请更正我)