- PR -

AD上のユーザーのパスワード変更日の修正

1
投稿者投稿内容
highkick
常連さん
会議室デビュー日: 2006/01/19
投稿数: 39
投稿日時: 2006-01-19 20:41
稼動中のADにて以下のポリシー
「パスワードの有効期限:30日」
「対話型ログオン:パスワードが無効になる前にユーザーに変更を促す:7日」
を設定しようと思います。
このポリシーを設定すると、設定日から30日間が有効期限になり、7日前から変更を促す形になると思ったのですが、テストしたところ、過去30日以内にパスワードを変更していなかったユーザーは次回ログオン時にパスワードの変更が必要になってしまいました。
これを、いきなりパスワードを変更させるのではなく、ある程度の猶予期間を設けて、ログオン時にパスワードの変更を促す形で変更させたいのですが、何かいい方法はありませんでしょうか?
最終パスワード変更日時をリセットするようなことが出来れば可能かと思うのですが、ご存知の方いらっしゃいましたらご教示願います。
ジーちゃん
ベテラン
会議室デビュー日: 2006/01/07
投稿数: 69
お住まい・勤務地: 関東
投稿日時: 2006-01-20 10:44
ジーニーです。

手助けできる情報はないのですが、ちょっとコメントさせて頂きます。

引用:

highkickさんの書き込み (2006-01-19 20:41) より:


過去30日以内にパスワードを変更していなかったユーザーは次回ログオン時にパスワードの変更が必要になってしまいました。
これを、いきなりパスワードを変更させるのではなく、ある程度の猶予期間を設けて、ログオン時にパスワードの変更を促す形で変更させたいのですが、何かいい方法はありませんでしょうか?




その動きは正常ですよ。

いきなり変更しなくていいように、猶予期間があり、変更を促すメッセージが
上がってくる訳で…

これで用件を満たせる様に有効期限などの設定を見直した方が良いかと思います。

パスワード変更日時をリセットする方法はわかりませんが、それを実施した場合、
全ユーザのパスワード変更日時の管理までしないといけなくなるので、
サーバ管理者の工数は激増すると思いますよ。

highkick
常連さん
会議室デビュー日: 2006/01/19
投稿数: 39
投稿日時: 2006-01-20 11:16
説明が足りないようですので再度説明します。

このポリシーを設定した場合、これから新規で作成するユーザーについては、パスワードを変更するまでに30日間の猶予があるのですが、すでに作成済みのユーザーについては、(前回のパスワード変更から30日以上経過していると)ポリシーを設定した後すぐにログオン時にいきなりパスワードの変更しないとログオン出来ない状況になってしまうのです。
この形だと急にパスワードの変更を要求されたユーザーが混乱するので、すべてのユーザーに変更を促すメッセージが表示される期間を持たせたいのですが・・何かうまい方法はありませんでしょうか?

まえせん
常連さん
会議室デビュー日: 2003/11/13
投稿数: 38
投稿日時: 2006-01-20 15:32
スクリプトでパスワード有効期限の日付を変更するというのはどうでしょうか。

http://www.microsoft.com/japan/technet/scriptcenter/scripts/ad/users/status/usstvb06.mspx

スクリプトセンターにはアカウントの有効期限の例しかありませんが、
objUser.AccountExpirationDate

objUser.PasswordExpirationDate
にすれば変更出来ると思います。

実際に動作を検証していないのでうまくいかなければごめんなさいです。
sophia(rc)
会議室デビュー日: 2005/09/02
投稿数: 18
投稿日時: 2006-01-20 18:53
「ログオン時にメッセージを表示する」ポリシーを作成して、「パスワードを変更してください」という旨のメッセージをログオン時に表示させてはどうでしょう?これならパスワードの有効期限に関係なく表示させることができます。
http://support.microsoft.com/default.aspx?scid=kb;ja;310430
tachi
会議室デビュー日: 2006/01/22
投稿数: 18
お住まい・勤務地: 横浜・東京
投稿日時: 2006-01-22 00:15
簡単です。

次回ログオン時パスワード変更を要求するのフラグを立て、解除すると最終パスワード変更日時が現在の日にリセットされます。これを利用します。
うちもドメインの規模がとんでもなく大きいのでsophia(rc)さんと同じ要件が発生しました。

たとえばユーザが3000いるとします。一旦すべてのユーザをリセットします。10日後に1000ユーザをリセットします。さらに10日後に1000ユーザをリセットします。
これで、30日後にまず1000人の変更が促され、さらに10日後1000人・・・といった感じでユーザの分散ができます。


スクリプトでフラグの設定・解除をやることで短期間で大量のユーザも対処できますのでチャレンジしてみてください。
ちなみに最終パスワード変更日時の属性はSYSTEMのみ書き込みが許可されている属性なので直接は書き換えができません。

tachi
会議室デビュー日: 2006/01/22
投稿数: 18
お住まい・勤務地: 横浜・東京
投稿日時: 2006-01-22 13:18
誤りがありましたので追記です。次回ログオン時パスワード変更を要求するのフラグは pwdLastSet の属性が使われます。 通常、ユーザがパスワードを変更するとこの値がセットされますが、この値を 0 または -1 に設定すると特殊な意味に変わります。

0:次回ログオン時にパスワード変更を要求する
-1:上記設定を解除する

-1に設定すると最終パスワード変更日時が現在の日時に変更されます。
highkick
常連さん
会議室デビュー日: 2006/01/19
投稿数: 39
投稿日時: 2006-01-23 10:08
みなさん、返答ありがとうございます。

最終的にtachiさんにいただいた情報で目的は実現できそうです。
「次回ログオン時パスワード変更」をチェック→適用→外し→適用 の形でリセットしようと思います。
アカウントは5000ぐらいあるのですが、2003なので特にスクリプトを使用しなくても、まとめてプロパティ変更を実施できそうです。

みなさん貴重な情報をありがとうございました。また何かありましたら、よろしくお願いいたします。
1

スキルアップ/キャリアアップ(JOB@IT)