Все варианты выше: не дают приемлемой защиты от кражи данных. Получив доступ к серверу, я смогу без проблем получить доступ ко всем паролям которые хранятся в "открытом" виде.
Правильный вариант:
Поднять на внешнем сервере свой API, на который будут скидываться открытые логин\пароль пользователей. Контакты с этим сервером только через API, на уровне: сохрани данные, начни работу, верни статус работы, обнови данные.
Тогда даже если я получу доступ к основному серверу, я физически не смогу достать открытые пароли пользователей. Максимум что я смогу - навредить, удалив эти данные. Но это я могу сделать и на основном сервере.