混淆密码LDAP AD

时间:2018-11-20 08:28:14

标签: java grails active-directory ldap

我的参数保存在属性文件中。

managerDn=cn=read-only-admin,dc=example,dc=com
managerPassword=69BPoqG3sWr/MNspi4ZsDw==
server=ldaps://server.local:636
groupSearchBase=ou=test,dc=example,dc=com
base=dc=example,dc=coms

我的密码是加密的,但是客户告诉我:您所做的只是对密码进行加密,我们需要对密码进行混淆处理,即使任何人都无法读取它。

有什么主意吗?

1 个答案:

答案 0 :(得分:1)

也许最好的选择是对整个属性文件进行base64编码。这不是加密,而是更多的“混淆”。为此,您可以执行以下操作:

//encode:
def encoded = file.text.bytes.encodeBase64().toString()

//decode:
def password = new String(file.text.decodeBase64())

您的属性文件如下:

bWFuYWdlckRuPWNuPXJlYWQtb25seS1hZG1pbixkYz1leGFtcGxlLGRjPWNvbQ0KbWFuYWdlclBhc3N3b3JkPTY5QlBvcUczc1dyL01Oc3BpNFpzRHc9PQ0Kc2VydmVyPWxkYXBzOi8vc2VydmVyLmxvY2FsOjYzNg0KZ3JvdXBTZWFyY2hCYXNlPW91PXRlc3QsZGM9ZXhhbXBsZSxkYz1jb20NCmJhc2U9ZGM9ZXhhbXBsZSxkYz1jb21z

here是一个可能有助于Groovy中的base64的链接。

注意:这样做实际上并没有增加任何安全性,只是隐藏了纯文本。任何知道他们正在查看内容的人都将以与您相同的方式对其进行解码。看来您的客户不熟悉这种类型的安全性。有更安全的方法可以做到这一点。您可能想研究一下实际的加密过程,或者使用与其他服务的令牌交换为您提供密码。