- PR -

ユーザのプロパティの表示と変更について

1
投稿者投稿内容
まるてぃ
会議室デビュー日: 2003/01/18
投稿数: 5
お住まい・勤務地: 高田馬場
投稿日時: 2007-07-17 16:21
サーバ:Windows Server 2003 Standerd Edition
において、
Active Directoryユーザとコンピュータの
ユーザのプロパティの中で
電話タグにメモ(N)があります。

これを
dsget user
dsmod user
で表示や変更したいのですが、オプションに何を使えばいいのかわかりません。

ヘルプを探しましたが、該当するオプションが見当たりません。
ヘルプに出てこないモノは、そもそも対象外なのでしょうか?

ご存知の方いらっしゃいましたら、よろしくお願いいたします。
ue
ぬし
会議室デビュー日: 2005/05/07
投稿数: 581
お住まい・勤務地: 広島市
投稿日時: 2007-07-17 17:08
こんばんは。

[電話]タブにある[メモ]欄は info という属性です。
dsquery * コマンドを利用して内容を取得することができます。
コード:
dsquery * "CN=ユーザー名,OU=OU名,DC=example,DC=local" -attr info


_________________
上本亮介 (ue) @ わんくま同盟
Microsoft MVP for VSTO (Jul 2008 - Jun 2009)
Hello Another World!
.NET 勉強会 / ヒーロー島
まるてぃ
会議室デビュー日: 2003/01/18
投稿数: 5
お住まい・勤務地: 高田馬場
投稿日時: 2007-07-17 19:19
ueさん、どうもありがとうございました。
早速試してみました。
dsquery * "CN=ユーザー名,OU=OU名,DC=example,DC=local" -attr info
で、メモの内容を確認することができました。

しかし、
dsmod user "CN=ユーザー名,OU=OU名,DC=example,DC=local" -info "変更データ"
というコマンドは受け付けてもらえませんでした。

エラーメッセージ
dsmod の失敗:`-info' は不明なパラメータです。

大量のユーザに対して、コマンドプロンプトから一括で変更したいのですが、
もし、修正方法ご存知でしたらよろしくお願いいたします。

ちなみに、
dsget user "CN=ユーザー名,OU=OU名,DC=example,DC=local" -info
も同様に、エラーメッセージが出て、はじかれました。
ue
ぬし
会議室デビュー日: 2005/05/07
投稿数: 581
お住まい・勤務地: 広島市
投稿日時: 2007-07-18 11:50
こんにちは。

属性の変更については WSH でスクリプトを書けば解決します。

以下は ADSIIADsUser インターフェースを VBScript から利用する方法です。
コード:
Set user = GetObject("LDAP://cn=ユーザー名,ou=OU名,dc=example,dc=local")
user.Put "info", "ここはメモ欄です"
user.SetInfo



ちなみに属性値の取得をスクリプトで書くとこんな感じになります。
コード:
Set user = GetObject("LDAP://cn=ユーザー名,ou=OU名,dc=example,dc=local")
WScript.Echo user.Get("info")


_________________
上本亮介 (ue) @ わんくま同盟
Microsoft MVP for VSTO (Jul 2008 - Jun 2009)
Hello Another World!
.NET 勉強会 / ヒーロー島
まるてぃ
会議室デビュー日: 2003/01/18
投稿数: 5
お住まい・勤務地: 高田馬場
投稿日時: 2007-07-18 13:37
ueさん、うまくいきました。

コマンドプロンプトをドメインのAdministratorで実行し、
infoに対する
取得スクリプト
内容変更スクリプト
をテストして、両者ともに成功しました。

それぞれのユーザ対して
info情報を調査した後、修正が必要なユーザを特定して
内容を変更するスクリプトを作成して

cscript VBSファイル

で一括で修正できました。

WSHとても便利ですね。
これから勉強します。
本当にどうもありがとうございました。
1

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