Never-ever create a simple string Password field in D365 because someone can steal it by SQL DB.
I know somewhere there is some information about secure password saving. However, I didn’t find a good short article so I’d like to post it.
If you want to make a secure solution and you need to save some credentials into Database follow next steps:
1. You need a table (better a new one and use it only for credentials);
2. Create a Password field, type – container, EDT – EncryptedField;
3. Override insert and update methods:
public void insert()
{
Global::handleEncryptedTablePreInsert(this);
super();
Global::handleEncryptedTablePostInsert(this);
}
public void update()
{
Global::handleEncryptedTablePreUpdate(this);
super();
Global::handleEncryptedTablePostUpdate(this);
}4. Add new one method for edit your password
public edit Password passwordEdit(boolean _set, Password value)
{
return Global::editEncryptedField(this, value, fieldNum([your table], [your field]), _set);
}5. In the design form create new str Password control (linked to the passwordEdit edit method Step.4) make a property Password Style = Yes
6. To Read Password or compare it
[passwordtableObject].passwordEdit(false,'') == 'passwordstring'