ユーザー更新時のセキュリティ通知をOFFにする方法は実装されているのでしょうか?

802 views
Skip to first unread message

SEKI

unread,
Feb 11, 2019, 8:46:32 PM2/11/19
to Redmine Users (japanese)
こんにちは。
また初めましてこちらのグループに投稿は初めてです。よろしくお願いいたします。

この度、3.4にRedmineをアップデート後、少々困っていることがあり、ググったりしたのですが
解決できずにいる設定があります。

3.3からセキュリティ通知という機能が追加されており、ユーザーのメールアドレスや設定が変更された場合
対象ユーザーにセキュリティ通知というメールが飛ぶようになっているかと思いますが
このセキュリティ通知のみを無効・OFFにできる機能は実装されているのでしょうか?

http://www.redmine.org/issues/21421
こちらで別途掲示板を立ててくれ・・・となっていて、あの後が追えることができない状況です。

もしないのであれば、「Mailer.account_activated(@user).deliver」系を消せば飛ばなくなるのかなと考え
調査・検証中です。

こちらの件に関して何かご存知であればご教示いただけますと幸いです。

よろしくお願いいたします。

前田剛

unread,
Feb 11, 2019, 10:09:12 PM2/11/19
to redmine-...@googlegroups.com
前田といいます。

2019年2月12日(火) 10:46 SEKI <sekiguch...@gmail.com>:
> 3.3からセキュリティ通知という機能が追加されており、ユーザーのメールアドレスや設定が変更された場合
> 対象ユーザーにセキュリティ通知というメールが飛ぶようになっているかと思いますが
> このセキュリティ通知のみを無効・OFFにできる機能は実装されているのでしょうか?

現時点の最新版のRedmine
4.0において、セキュリティ通知をOFFにする機能はありません。また、誰も公式サイトに機能要望のチケットを作成していないので、機能要望としても認識されていないと思います。

どうしてもセキュリティ通知を送りたくない場合は、現状ではソースコードを改変することになります。以下のURLに書いたように変更するとセキュリティ通知が送られなくなるのではないかと思います(動作確認はしていません。ご自身の責任でご利用ください)。
https://gist.github.com/vividtone/d8ccefe20b2f5562a58b050caeb860ec

ところで、今後の活動の参考のために、差し支えなければセキュリティ通知を送りたくない理由を教えていただけますでしょうか。

--
// 前田 剛

SEKI

unread,
Feb 11, 2019, 10:54:42 PM2/11/19
to Redmine Users (japanese)

前田様

お世話になっております。
早々のご回答ありがとうございます。
またソースコードのご紹介ありがとうございます。

機能はないのですね。

セキュリティ通知を無効化する理由は
Redmine社内のお問い合わせ管理のベースと使用しておりユーザーが数千人登録してあります。

ユーザー更新時にAPIで全件更新かけておりました。(比較するより全件更新の方が早かったとメモにはあります。)
今回のバージョンアップ後にユーザー取込ジョブを流したところ、一部のユーザー(メールアドレスが更新された?更新処理が走った?)
にメールが飛んでしまうという事象が発生したので、更新時に飛ばなくしたいという背景があります。



追加でお伺いしてお手数をおかけしますが、
可能な範囲で構いませんので、以下をご教示頂きたいです。
Rubyがまだ学習して間もない為、そもそもの認識に誤りがありましたら申し訳ございません。


①今回ご教示頂いた4か所を修正すると、メールが飛ばなくなるのはセキュリティ通知関連のみで
例えばチケットの変更通知メールなどは飛ぶという認識で問題ありませんでしょうか。


②上記のように考えた理由は
 def deliver_security_notification
 def self.password_updated
 def self.security_settings_updated
 def deliver_security_notification
 
 上記4つのメソッドでセキュリティ通知を送る処理を送る処理が書いている。
 しかしそれより前に「Return True」を記載することによって
 メソッドは呼び出しされるが、何もせずにリターンするように改修してくださっている。
 という認識でよろしいでしょうか?
 
③もし②の認識が合っているようであれば、
 自分が行おうとしていたコントローラーからメールを飛ばしていそうな処理を削るより
 モデルに対応を行う方が良い理由についてご教示頂きたいです。
 
 自分の認識としては、Router→Controller→Model→データベースと行く認識なので
 呼び出す元を無効にするより、呼び出された元を無効化した方が漏れが生まれる可能性が
 減るからなのでしょうか?
 


2019年2月12日火曜日 10時46分32秒 UTC+9 SEKI:

前田剛

unread,
Feb 11, 2019, 11:56:08 PM2/11/19
to redmine-...@googlegroups.com
前田です。

2019年2月12日(火) 12:54 SEKI <sekiguch...@gmail.com>:
> セキュリティ通知を無効化する理由は
> Redmine社内のお問い合わせ管理のベースと使用しておりユーザーが数千人登録してあります。
>
> ユーザー更新時にAPIで全件更新かけておりました。(比較するより全件更新の方が早かったとメモにはあります。)
> 今回のバージョンアップ後にユーザー取込ジョブを流したところ、一部のユーザー(メールアドレスが更新された?更新処理が走った?)
> にメールが飛んでしまうという事象が発生したので、更新時に飛ばなくしたいという背景があります。

利用者の方にとっては何もしていないのにいきなり何か問題が発生したかのようなメールが届いてしまい、不安を招いたり管理者の方への問い合わせが発生したちということですね。ご事情よくわかりました。ありがとうございました。


> ①今回ご教示頂いた4か所を修正すると、メールが飛ばなくなるのはセキュリティ通知関連のみで
> 例えばチケットの変更通知メールなどは飛ぶという認識で問題ありませんでしょうか。

はい、そのつもりです。ただ、きちんとテストしていませんので、本格展開前に確認をお願いいたします。

> ②上記のように考えた理由は
>  def deliver_security_notification
>  def self.password_updated
>  def self.security_settings_updated
>  def deliver_security_notification
>
>  上記4つのメソッドでセキュリティ通知を送る処理を送る処理が書いている。
>  しかしそれより前に「Return True」を記載することによって
>  メソッドは呼び出しされるが、何もせずにリターンするように改修してくださっている。
>  という認識でよろしいでしょうか?

その通りです。


> ③もし②の認識が合っているようであれば、
>  自分が行おうとしていたコントローラーからメールを飛ばしていそうな処理を削るより
>  モデルに対応を行う方が良い理由についてご教示頂きたいです。
>
>  自分の認識としては、Router→Controller→Model→データベースと行く認識なので
>  呼び出す元を無効にするより、呼び出された元を無効化した方が漏れが生まれる可能性が
>  減るからなのでしょうか?

ご推察の通り、実際のメール送信処理に近い箇所を修正することで、(1) 変更箇所をなるべく少なくする (2) 変更漏れが発生する可能性を抑える
— ということを意図しています。

--
// 前田 剛

SEKI

unread,
Feb 12, 2019, 1:06:01 AM2/12/19
to Redmine Users (japanese)

前田様 

ご返信ありがとうございます。

紛らわしい書き方になっていたので念のため訂正です。
「Redmine社内のお問い合わせ管理のベースと使用しており」
「Redmine社内のお問い合わせ管理のベースと使用しており」

>利用者の方にとっては何もしていないのにいきなり何か問題が発生したかのようなメールが届いてしまい、不安を招いたり管理者の方への問い合わせが発生したちということですね。ご事情よくわかりました。ありがとうございました。

はい、セキュリティという文言も相まって何かが起こったと思われた方も幾人かいらっしゃったようです。
(そもそもの使い方がプロジェクト管理ではなくインシデント管理として使ってしまっているので、しょうが無いと思いますが。。。)

自分もこのような設定は管理>設定にあると思って設定の学習はしたのですが、
設定項目にはないメール送信には気づけず今回の事態が発生してしまいました。
アップデートの一覧には軽く目を通していたのですがこのようなこのともあり得ると思い今後は、アップデート履歴を注意して読もうと思っております。

追加の確認点①、②、③についてそれぞれご確認して頂きありがとうございます。
認識があっているとわかり安心致しました。

数日中に検証を行いこちらにご報告させて頂こうと考えております。


SEKI

unread,
Feb 17, 2019, 9:53:42 PM2/17/19
to Redmine Users (japanese)
前田様

お世話になっております。

検証した結果メールは、飛ばないようになりました。

ユーザーのセキュリティ通知は画面とAPIそれぞれで確認し、メールが飛ばなくなることを確認できました。
管理者設定系のセキュリティ通知は、ユーザーに管理者権限を付与すると設定変更の旨のメールが飛んできておりましたが飛ばなくなりました。

この度はご教示、ご協力頂きまして有難うございました。


Reply all
Reply to author
Forward
0 new messages