QA #702
奈良 裕記 さんが約5年前に更新
h3. ■現象/要望
redmineインストール直後のadminパスワードを初期値(admin)から変更したい。
インストール時の定義ファイル上指定などで対応できればベスト。
スクリプトで数十分掛けて自動インストールする場合は、install直後のadminパスワード変更徹底は困難。
パスワード変更前に不正利用される可能性がある。
社内サーバやSaaSなら大きな問題ではないが、インターネット上のVPS等を利用する場合は、セキュリテイ上の問題に成り兼ねない。
http://redmine.jp/tech_note/first-step/admin/admin-user-password/
インストール/起動直後にhttpd止めておく方法もあるが、
インフラ管理者の手間/待ち時間の削減を考えると、インストール後は別途連絡したadmin-passで即時利用可能にするのが適切。
h3. ■解決策
h4. adminパスワード変更スクリプト処理
Redmine本体インストール直後に下記処理を実行しadmin-passを強制変更すればよい。
quitまでを別途テキストファイルで作成しておき、<リダイレクションすれば、ワンライナーで実行できる。
bundle exec rails console production
>> User.find_by_login('admin').update_attribute(:password, '新パスワード')
>> quit
adminユーザーのパスワードをリセットする
http://redmine.jp/faq/administration/reset-admin-password/
h4. AnsiblePlaybook対応
上記処理を、UnofficialCooking版のRedmine初期インストール用AnsiblePlaybookに組み込んだ。
adminパスワード(変更可)→ unofficial-cracking
(3.3対応版)
Ansible Playbook(Redmine3.3/UnofficialCooking/Centos7/mariadb)
https://github.com/y503unavailable/redmine-centos-ansible/issues/3
h3. ■対応状況
下記手順で対応可能
・Railsコンソール実行
・AnsiblePlaybook
h3. ■補足
Thanks
https://toot.redmine.jp/@koichi/136585
最近のRailsではコンソールからのパスワード変更時に下記発生するため、対応変更する必要があるかもしれない。
WARNING: Can't mass-assign protected attributes for User: password
詳細→ https://twitter.com/61503891/status/1058275752695627776
戻る