QA #1283
openオンプレRedmine(AD上IDで初回ログイン時にIDを自動登録)にて、emailのactivationによる別ID登録を防止したい
0%
Description
■現象/要望¶
オンプレRedmineでAD上IDを初回ログイン時に自動登録している場合、実際にはemailのactivationによる別ID登録も可能である。
AD上IDのみに統一するため、email経由の登録を防止したい。
■解決策¶
本件の動作は、Redmineの仕様によるものと判明しました。
管理/設定/認証/ユーザーによるアカウント登録=無効 で対応できます。
詳細は下記リンク先を参照ください。
https://redmine.tokyo/issues/1163#note-9
>4.Redmineのアカウント登録設定とLDAP認証設定は無関係に動作する。
>ユーザーによるアカウント登録を無効にしても、LDAP認証が有効の場合、ユーザが自分でLDAP上の自分のIDを登録できる。
1.単にユーザの誤操作を防止したいだけの場合、
Redmineのメニュー上で、右上の[登録する]のリンクを非表示にすれば良い。
登録画面を非表示、ログイン操作を実施するようガイダンスを表示する方法もある。
(ViewCustomoizeで可能)
2.登録を完全に防ぎたい場合
1のリンク非表示対策だけでは、実際の登録画面のURLを呼び出すだけで対処可能である。
登録画面についても、表示しないようにカスタマイズ可能だが、
登録可能性を完全に排除する必要がある場合は、Redmine内コードレベルで修正が必要となる。
■対応状況¶
viewcustomize設定例
画面右上の「登録する」を非表示にする¶
パスのパターン .*
挿入位置 全ページのヘッダ
種別 CSS
コード
#top-menu a.register{ display: none; }
「登録する」リンク先を非表示にする¶
パスのパターン /account/register
挿入位置 全ページのヘッダ
種別 CSS
コード
div #content{ display: none; }
「登録する」リンク先に、ログイン画面への案内とリンクを表示する。¶
パスのパターン /account/register
挿入位置 全ページのヘッダ
Javascript
$(function() { $('#main').before( '<div class="nosidebar">' + ' <p>本Redmineのログインには社内ADのID/PASSを入力してください<p>' + ' <p><a href="../login"><button type="button"><span >ログイン画面に移動する</span></button></a></p>' + ' <p>一度ログインした後、各プロジェクト側でユーザIDにアクセス権限を割り当てると利用可能になります。</p>' + '</div>' ); });
登録可能性を完全に排除する必要がある場合¶
Redmine内コードレベルで修正が必要となる。
app/controllers/account_controller.rb
register_by_email_activationの中身をコメントアウトするなどで無効化すればよい。
■補足¶
参考
ログイン画面にアカウント登録を促すメッセージを表示する
https://github.com/farend/redmine-view-customize-examples/blob/master/customizes/fb591668/customize.md