С точки зрения юзабилити, я бы предложил «лучший» способ его реализации, заключающийся в использовании некоторой ролевой модели, посредством которой пользователь проходит аутентификацию, когда он начинает использовать приложение, и затем отображаются элементы формы, зависящие от роли.соответственно.
Если вы действительно хотите, чтобы для ввода пароля использовалась кнопка, почему бы не оставить ее включенной, а в обработчике события щелчка показать форму захвата пароля?Остальной код выполняется только в том случае, если пароль правильный, иначе событие отменяется.