我有一个使用数据窗口选择/更新的表格用户维护窗口。
我需要加密保存在 MSSQL 数据库中的密码。
我有一个用于 Powerbuilder 和 dbo 的函数 f_decrypt。
如何使用 dw.Update() 加密密码?
我有一个使用数据窗口选择/更新的表格用户维护窗口。
我需要加密保存在 MSSQL 数据库中的密码。
我有一个用于 Powerbuilder 和 dbo 的函数 f_decrypt。
如何使用 dw.Update() 加密密码?
可能会写一本关于可能性的小书。我的第一个问题是存储加密密码的要求,或者密码是否必须通过加密的线路。如果存储是唯一的要求,我倾向于让 DBMS 做一个高级程序员团队花了几个月时间试图做到的事情,而不是自己重新发明轮子。即使它必须通过加密的线路,我也会先查看 DBMS 提供的选项。
如果您必须在客户端执行此操作并处理散列、加盐、防止代码的逆向工程等,您自己,可能仍然有十几种方法可以做到这一点。我尝试的第一种方法是为密码用户界面制作一个带有虚拟列的 DataWindow,以及表中的列,例如
SELECT ' ' as password_ui,
table.password_storage,
...
FROM table
....
我会将 password_ui 放在 DataWindow 的用户界面上,并将 password_storage 放在用户界面之外,但要确保 password_storage 作为可更新列包含在更新属性中。然后,在 ItemChanged 上,如果更改的列是 password_ui,我会
CHOOSE CASE dwo.Name
CASE "password_ui"
SetItem (row, "password_storage", f_encrypt (data))
END CHOOSE
祝你好运,
特里。