- - PR -
固定プロファイルのログオン後のHKCUへreg追加する方法について
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-05-12 02:04
お知恵をお借りできればと思います。
【状況】 一般の制限ユーザーは固定プロファイルを背負っている、 Users権限しかないアカウントを使用してドメインログオンする環境です。 サーバ:Win2003/クライアント:XP この環境で、特定のPCにだけ入っているアプリで 必要なHKCU配下のレジストリキーと値を、 ログオンスクリプトやスタートアップスクリプト、 GPOやタスクなどの何らかの方法で、ユーザーがログオンしたら そのキーがレジストリに有る状態でPCが使える、 ということが実現できればと思っています。 大本の固定プロファイル自体は他PCへも影響してしまう為 変更が出来ません。その為PCかOUに紐付けて処理が出来たらと思います。 単純に、ログオンをトリガーにregファイルの追加するようなタスク、 またログオン後に少しWaitを置いてregインポートするようなBat、 またそれを指定したスタートアップスクリプトなど試してみたのですが、 どれも上手く行きませんでした。。 必要なレジストリキーがHKLMやHKUで有れば事前にレジストリを追加出来るのですが、 固定プロファイルかつ、HKCUということで困っております。 こうやって出来た、また出来るのでは?というようなアイディアだけでも ヒントになりますのでありがたいと思います。 宜しくお願い致します。 | ||||||||||||
|
投稿日時: 2007-05-12 02:16
その registry key は毎回更新する必要があるんですか?
毎回更新する必要が無いんでしたら、その application の初回起動時に設定 (office のような感じ) するように application 側で対処するのが一番よいと思いますが。 HKCU なら logon script で問題ないですよね。ACL で制限かかっていなければ。 _________________ | ||||||||||||
|
投稿日時: 2007-05-12 02:41
ちゃっぴさん
早速のご返答有難うございます。 必要なレジストリキー自体は内容は固定です。 その為、固定プロファイルでなく、例えばローカルにプロファイルを持たせれば そのレジストリキーに関しては一回追加すれば大丈夫です。(他に影響が出ますが) すみません、ひょっとしたら他のドメイン環境では違うのかも知れないのですが、 私の環境では一般のユーザーアカウントではレジストリが追加出来ないように 制限が掛かっています。 その為、例えばスタートアップにレジストリを追加するBatなど入れても、 その権限では実行しても権限がなく、追加出来ません。 HKLMのレジストリキーなら例えばRunasでadmin権限でレジストリ入れたりは 出来るのですが。 これは必要な情報でしたね。。 申し訳ないです。 | ||||||||||||
|
投稿日時: 2007-05-12 10:38
え〜と。やっぱり書いた方がよかったですね。 用語を正しく使ってください。 「固定プロファイル」 これが意味するのは、「移動プロファイル」の逆の意味で、user profile は local に置かれたものを常に使用するものです。 なので、 「ローカルにプロファイルを持たせれば」 この表現との対比が全く理解できません。 社内のみで通用する用語ではなく、Microsoft が定義した用語を使ってください。
HKCU であろうと現在の user が ACL によって書きこめない registry entry は default で存在します。 例えば、"HKCU\Software\Policies" とか。 上記の場合、group policy とかで使われるので、勝手に変更できないように設定されています。 で、変更を行おうとしているのは具体的にどの key ですか? で、それを変更することによって何を行いたい、またはどのような data を格納したいのですか?
偽装して、別の資格情報で書き込むという方法はあるんですが、HKCU に対して行わなければならない理由は少ないはずです。その registry key に対して ACL を許可してやる方法も使えると思います。 _________________ | ||||||||||||
|
投稿日時: 2007-05-12 23:04
ちゃっぴさん
ご返答有難うございます。 私の書き方で誤解を招いてしまったら申し訳ないです。 ご指摘頂きました固定プロファイル、というのは、 移動プロファイルの一種で、NTUSER.DATをNTUSER.MANに変えたものです。 移動プロファイルとの違いは、使用しているユーザーがログオフしても 変更した内容がサーバ上のプロファイルへ残らないことです。 参考:http://technet2.microsoft.com/WindowsServer/ja/library/3bd7900c-6145-461d-89f2-c12a8c6dd7301041.mspx?mfr=true また、一例なのですが、ログオンする際に設定したいレジストリキーは 以下のキーなどです。 HKEY_CURRENT_USER\\Software\\Microsoft\\Multimedia\\Sound Mapper これはWindowsの既定のサウンドデバイスの設定などを行った場合に生成される キーのようで、このキー内で指定すれば再生や録音用のサウンドデバイスが 指定出来ました。 やり取りをさせて頂いていて、ひょっとすると私が勘違いしているかも、 と思ったのですが、 通常はローカルに対して管理者権限でなく、Usersの権限しか持っていなくても 〜〜.regというファイルのインポートなどは出来るものでしょうか。。 初歩的な内容ですみません。今度 当該の環境で試してみようと思います。 | ||||||||||||
|
投稿日時: 2007-05-17 00:37
おそくなりました。
そちらのほうですか。普段まったく利用しないので、忘却の彼方に逝ってしまってました。
上記の Key を確認しましたが、default で書き込めますね。
Registry にも ACL が存在します。 で、権限があるかを判断するのは、その thread が持っている access token と対象の ACL を突き合わせて判断しています。 一度 registry の ACL を確認してみてください。 _________________ | ||||||||||||
|
投稿日時: 2007-05-19 00:29
ちゃっぴさん
再度のお返事有難うございます。 こちらの件、お蔭様で、おぼつかないながらも見よう見真似のVBSで、 先般記したレジストリキーを書き込むことで、私の思っていた結果を 得ることが出来ました。 やり取りをさせて頂いた中でのご指摘のとおり、HKCUはDomainUsersの権限でも フルコントロールが付いて編集可能でした。 勘違いしていてお手数をお掛けしてしまいました。 グループポリシーでregedit.exeの実行を一般ユーザーアカウントでは 出来ないように設定されているのは認識していたのですが、 コマンドプロンプトのreg.exeも その制限に引っかかるのかも知れません。。 reg import ○○.regといったbat実行しても効かなかった事から、 reg.exeはregedit.exeのサブセットというか、 一部regedit.exeの機能を使っているのかも知れないなぁ、と結果から思いました。 ・・・ひょっとするとregファイルを扱っているからかも知れません。 ともあれ、無事解決いたしました。 これで少数のPC環境の為に 大本のプロファイルを更新しないで済みそうです。 ちゃっぴさん、まことに有難うございました。 | ||||||||||||
|
投稿日時: 2007-05-19 00:54
そういう原因の切り分けは Process Monitor を使ってやると正確に出てきます。
おそらく、group policy で「レジストリ編集ツールへアクセスできないようにする」が有効に構成されているんでしょう。 "regedit.exe" のみだけ制限をかけたい場合には、"regedit.exe" の ACL を編集するのが正しい設計です。 _________________ |
1