Во-первых, SetPassword пытается использовать ldap через ssl. затем Kerberos, а затем NetUserSetInfo. Итак, насколько я могу судить, во всех случаях это безопасно на проводе. Но это также довольно медленно.
Это не относится к Адаму - он использует пароли в открытом виде. Остерегайтесь обёрток, которые говорят с Адамом вместо «правильной» нашей эры.
Более быстрый способ - использовать IDirectoryObject и через него установить атрибут unicodePwd. Поскольку это можно сделать только с помощью безопасной привязки к AD, пароль защищен.