HTTPPassword字段未加密

时间:2019-05-08 05:35:45

标签: lotus-notes lotusscript

我最近将IBM Domino服务器从v9.01升级到了v10.1。我有一个LotusScript代理,可以在NAB中创建一个用户并设置HTTPPassword字段。

代码如下:

            docPerson.Type = "Person"
            docPerson.LastName = req.iSurname(0)
            docPerson.FirstName = req.iFirstName(0)
            docPerson.FullName = req.iFirstName(0) + " " + req.iSurname(0) + " " + req.iCompany(0)
            docPerson.MailAddress = req.iEmail(0)
            If req.IMEPassword(0) = "" Then
                req.IMEPassword = getRandom()
            End If
            docPerson.HTTPPassword = "HelloWorld" 
            docPerson.CompanyName = req.iCompany(0)

            Call docPerson.ComputeWithForm( False, False )
            Call docPerson.Save( False, True )

自升级以来,不再对HTTPPassword字段进行哈希处理。根据代码,它在NAB中以纯文本形式显示,以前是对其进行哈希处理的(例如,显示为“((68A58FFF6684AFD161FD5682C152C122)”)。

我的解决方法是手动输入密码并将记录保存在NAB中。

NAB的设计已更新。

我没有找到有关升级可能如何更改的任何信息。有什么想法吗?

我检查了NAB上的设计是否正确更新。所有设计元素似乎都能正确显示。

1 个答案:

答案 0 :(得分:2)

我建议您自己生成哈希密码,而不要使用“快速且肮脏的” computeWithForm方法。 根据您的设置,您可以使用@Password或@HashPassword-当在Domino目录中启用了更安全的Internet密码时,后者可以使用。 您可以使用以下代码生成哈希:

Dim pw As String
Dim ret As Variant
pw="HelloWorld"
ret = Evaluate(|@HashPassword(pw)|)
Print ret(0)

有一篇有趣的文章,可以在这里找到有关密码哈希的更多详细信息: http://techlab.ytria.com/6047/lotus-notes-articles/deep-dive-domino-security-part-1-understanding-ibm-domino-password-hashes/