AWS RDS mysql 5.7.10だと360日でアカウント強制無効化されるとか聞いてないよ

  • 日時: 2016/03/03

mysql 5.7 がAWS RDS で使えるということで、使ってみました。

そうすると、気になる記事を発見

アカウントの自動失効

MySQL 5.7で新しく追加された機能の1つに,アカウントの自動失効機能があります。これは最後にパスワードを変更した時間からデフォルトで360日が経過すると,そのアカウントをEXPIRE(無効化)しその後のログインを許可しないという強烈なオプションです。テストのために都度ビルドして利用するようなケースで問題になることは少ないかと思いますが,作成したイメージをそのまま長期間利用する(あるいは,ビルド時にユーザを作成し,その後アカウントが追加されることはあってもパスワードが変更されることはないようなケース)場合はこの機能をOFFにしておいた方がいいでしょう。

引用元

http://gihyo.jp/dev/serial/01/mysql-road-construction-news/0010

MySQL 5.7.11でdefault_password_lifetimeのデフォルトは0に変更になりました!

引用元 http://yoku0825.blogspot.jp/2015/06/mysql-574defaultpasswordlifetime.html

とのことで

  • mysql 5.7.0 ~ 5.7.10 は 360日経過するとデフォルトでアカウントが無効化される
  • mysql 5.7.11 以降 デフォルトでアカウント無効化しない.
  • AWS のRDS mysqlは 5.7.10

AWS が気を利かせてデフォルト値を変更しててくれてないかなと期待して見てみると

mysql> select @@default_password_lifetime;
+-----------------------------+
| @@default_password_lifetime |
+-----------------------------+
|                         360 |
+-----------------------------+
1 row in set (0.01 sec)

はい、360日で無効化されてしまいますね。

AWSコンソールから default_password_lifetime を 0にするように変更します。

利用中のパラメーターグループを選択し、default_password_lifetime の値を0に変更します。

gyazo.com

変更後

mysql> select @@default_password_lifetime;
+-----------------------------+
| @@default_password_lifetime |
+-----------------------------+
|                           0 |
+-----------------------------+
1 row in set (0.00 sec)

無停止で変更できました。

これで強制無効化はなくなった。よかった。