我想在Genexus中自定义实现身份验证。是否可以在不启用Genexus Access Manager(GAM)的情况下在组件中实现身份验证?
答案 0 :(得分:0)
当然,您可以自己管理并手动将加密的密码保存在数据库中。
答案 1 :(得分:0)
为了安全起见,我建议您根据 OWASP Password Storage Cheat Sheet
存储散列而不加密的密码以下是如何使用 SHA512 进行散列的示例,但您可以从 CryptoHash 中的所有选项中进行选择:
Parm(in:&PassWord, out:&HashSHA512);
&CryptoHash.Algorithm = CryptoHashAlgorithm.SHA512
&Digerido = &PassWord.Trim() // you can add salt here
for &i = 1 to 10 //number of iterations in hashing
&Digerido = &CryptoHash.Compute(&Digerido)
endfor
&HashSHA512 = &Digerido.ToUpper()
所以基本上你使用这个过程来散列你的密码并将其存储在数据库中,当用户登录时,你使用过程获取散列并将散列与存储在数据库中的散列进行比较。
>