本ドキュメントについて
本ドキュメントはユーザのパスワード有効期限(Password Lifetime)を有効にしている状況で、期限切れ前にパスワード変更したにも関わらず、ユーザーが無効(Disable)となってしまう事象について説明します。
Administration > Identity Management > Settings > User Authenticaion Settings > Password Policy
また、本ドキュメントは以下の環境で確認した挙動をベースとしています。
説明
Password Lifetimeを有効にしている場合、保持している全てのパスワードを有効期限までに変更しないでいると、ISEはパスワードの有効期限切れと見なし、対象のユーザをDisableとします。
具体的な例として、以下のようなユーザを同時に作成したとします。
User |
Login Password |
Enable Password |
user_a |
○ |
× |
user_b |
○ |
× |
user_c |
○ |
○ |
user_d |
○ |
○ |
user_e |
○ |
○ |
user_f |
○ |
○ |
ここで、有効期限まで以下のユーザに対してパスワード変更をしたとします。
User |
Login Password |
Enable Password |
user_a |
- |
NA |
user_b |
変更 |
NA |
user_c |
- |
- |
user_d |
変更 |
- |
user_e |
- |
変更 |
user_f |
変更 |
変更 |
そのまま、ユーザ作成日から起算してパスワード有効期限を迎えると、以下のような結果となります。
User |
ステータス |
無効化の理由 |
user_a |
Disabled |
Login Passwordの有効期限が切れたため |
user_b |
Enabled |
|
user_c |
Disabled |
LoginおよびEnable Passwordの有効期限が切れたため |
user_d |
Disabled |
Enable Passwordの有効期限が切れたため |
user_e |
Disabled |
Login Passwordの有効期限が切れたため |
user_f |
Enabled |
|
つまり、Password Lifetimeを設定している場合にユーザアカウントの無効化を回避するためには、有効期限までに保持している全てのパスワードを、定期的に更新する必要があります。
特に、ネットワークデバイス(Cisco IOS等)へのログインで利用している環境でログインパスワードやEnableパスワードを入力/変更するプロンプトが出ない(Bypassしている)場合は、ネットワークデバイスからのパスワード変更ができない場合が多いため、注意が必要です。
その場合にはISEのGUIから対象のユーザの各パスワードを定期的に変更する必要があります。
トラブルシューティング
意図せずユーザが無効化されてしまった場合、その日のise-psc.logを見ることで、理由が確認できます。
Operations > Troubleshoot > Download Logs > *[NODE]* > Debug Logs
2019-08-15 00:01:00,206 WARN [DefaultQuartzScheduler_Worker-2][] cisco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_a
2019-08-15 00:01:00,209 WARN [DefaultQuartzScheduler_Worker-2][] cisco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_a
2019-08-15 00:01:00,209 INFO [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User user_a password expired
2019-08-15 00:01:00,210 WARN [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User user_a is disabled because of User Password Expiry
2019-08-15 00:01:00,213 WARN [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User was disabled and saved
<snip>
isco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_c
2019-08-15 00:01:00,341 WARN [DefaultQuartzScheduler_Worker-2][] cisco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_c
2019-08-15 00:01:00,342 WARN [DefaultQuartzScheduler_Worker-2][] cisco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_c
2019-08-15 00:01:00,342 INFO [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User user_c both user password & enable Password expired
2019-08-15 00:01:00,342 WARN [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User user_c is disabled because both User Passwordand Enable Password expired
2019-08-15 00:01:00,345 WARN [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User was disabled and saved
<snip>
cisco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_d
2019-08-15 00:01:00,375 WARN [DefaultQuartzScheduler_Worker-2][] cisco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_d
2019-08-15 00:01:00,375 INFO [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User user_d Enable password expired
2019-08-15 00:01:00,375 WARN [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User user_d is disabled because of Enable User Password Expiry
2019-08-15 00:01:00,377 WARN [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User was disabled and saved
<snip>
cisco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_e
2019-08-15 00:01:00,416 WARN [DefaultQuartzScheduler_Worker-2][] cisco.ise.ups.internaluser.InternalUserAdapter -::::- Password has Expired for User ==> user_e
2019-08-15 00:01:00,418 INFO [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User user_e password expired
2019-08-15 00:01:00,418 WARN [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User user_e is disabled because of User Password Expiry
2019-08-15 00:01:00,422 WARN [DefaultQuartzScheduler_Worker-2][] cisco.cpm.nsf.impl.NSFJobScheduler -::::- User was disabled and saved