My first answer was indeed too short and I feel that it does not answer your question fully!
You are searching for a method to bind to the SecurePassword property, but unfortunally such property is not a DependencyProperty and cannot be data-bound.
This leads to few options:
1. Write a Control that acts like a PasswordBox with a DependencyProperty to store the string (not a good idea, since it requires time to replicate all the functionalities of the original control, and lacks security, unless you define the DependencyProperty
as a SecureString itself)
2. Create a control that hosts a PasswordBox, exposes a DependencyProperty for the passwords and internally handles the interaction with the Password property itself, or write an attached behaviour that serves the purpose (totally defeats the security of
the PasswordBox, but is the simplest method if security is not a concern... but, honestly, it should be...)
3. Create an interface to be implemented in the View, which is consumed by the ViewModel (so the ViewModel should be aware of the View), so that you can explicitly manage the properties of the View, avoiding data-binding (this way you tighten the relationship
between the View and the ViewModel, but you can benefit of all the advantages of the PasswordBox)
Note that the post I was referring to earlier, links to a sample for the second option, while the last post explicitly cites the ViewModel->View interaction to solve the problem.