locked
Windows VistaでUAC(ユーザーアカウント制御)が有効なのに、レジストリキーを作ったり値を書き込める RRS feed

  • 質問

  • こんにちは。

    さて表題の件、

     

    WindowsVista Home Premiumで(複数のメーカーで購入したPC3台のプレインストール)版に、

     

    HKLM\software\

    以下にキーを作成するプログラムを実行してみました。

    いずれもUACは有効です。

    また、作成したプログラムには、昇格権限マニフェストや、マニフェストの埋め込みはありません。

     

     

    2台はキー作成も値も作成できました。

    1台は書き込めませんでした。また、仮想レジストリも作成されていないことを

    UACを無効にして、レジストリエディターから、確認しました。

    (その後SP1を適用して確認しましたが、同じ現象でした。)

     

    そこでVista Ultimetを購入して

    HKLM\software\

    以下にキーを作成してみました。UACは有効です。

    キーや値は作成されず、仮想化もされていませんでした。

     

    さらにVistaHomeBasicを購入して

    HKLM\software\

    以下にキーを作成してみました。UACは有効です。

    キーや値は作成されず、仮想化もされていませんでした。

     

    どうして、いくつかのメーカーのプレインストールPCは、UACが有効でも

    (SP1を適用しても)

    レジストリに書けるのでしょうか?

     

     

     

     

     

    おしえてください。

     

    2008年6月25日 8:16

回答

  • こんにちは。

    kancargo様のお答えが正解でした。ありがとうございます。

     

    各メーカー(3社)からプレインストールされているWindowsVistaのPCの

    レジストリ「HKLM\Software」のアクセス許可を確認すると共通で

     

    Everyone

     フルコントロール 許可

     読み取り     許可

     特殊なアクセス  設定なし

     

    と、設定されていました。

     

     

    VistaOSを新規にインストールした場合は(SP1適用、未適用に限らず)、

    あたりまえの設定

     

    Users

     フルコントロール 設定なし

     読み取り     許可

     特殊なアクセス  設定なし

     

    となっています。

     

     

    各メーカー(3社、メーカー名は言えません)のレジストリのアクセス許可設定は

    ゲストユーザーでも書き込めてしまう設定です。

    (UACの意味が全くありません。それどころかXPよりもセキュリティレベルが低い。)

     

    かなり驚きましたが、原因がわかりました。ありがとうございました。

    2008年7月1日 6:31

すべての返信

  • ローカルのグループポリシーが変更されているのではないでしょうか。

    UACのかかった状態でもそのまま確認を出さずに昇格させるということも可能です。

    ファイル名を指定して実行で

    gpedit.msc

    を実行し

    ローカルコンピュータポリシーを起動し

    [コンピュータの構成]-[Windows設定]-[セキュリティ設定]-[ローカルポリシー]-[セキュリティオプション]

    の中のユーザーアカウント制御に関する項目を確認してはいかがでしょうか。

     

    2008年6月26日 3:53
  • お返事ありがとうございます。

     

    グループポリシーエディタですが、Vista Ultimet 又は Vista Business 又はEnterpriseだけのサポートなのでHome BasicやHome Premiumにはgpedit.mscが搭載されていないみたいなのです。

     

    今般、UAC有効でもレジストリに書き込めるのは、

    Home Premium

    なので、グループポリシーエディタで個別設定しているとは考えにくいのです。

     

    レジストリ等を直接編集することにより可能なのでしょうか。

     

    すいませんが、よろしくおねがいします。

    2008年6月26日 8:55
  •  

    こんにちは。

    ご返信いただきました内容から調べまして

     

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

     

    キーの

     

    レジストリ値:  ConsentPromptBehaviorAdmin

     

    の値が 0 の場合に可能である可能性がありそうです。

     

    もう少し探ってみます。

     

    ありがとうございます。

    2008年6月26日 9:20
  • あれから、レジストリを調べてみましたが、

    レジストリに昇格権限なしでキー作成できるPC、できないPCすべてが

    同じレジストリ設定でした。

     

     

    レジストリ値:  ConsentPromptBehaviorAdmin

    値:2

     

    レジストリ値:  ConsentPromptBehaviorUser

    値:1

     

    レジストリ値:  EnableLUA

    値:1

     

    レジストリ値:  EnableUIADesktopToggle

    値:0

     

    レジストリ値:  EnableVirtualization

    値:1

     

     

    その他のUACに関係するレジストリ値も全PCで同じ値で、

    原因不明となってしまいました・・・。

    すいません、何か他に原因があるのでしょうか。

    2008年6月27日 8:09
  • 今、手元に Vista の実機がないので確認が取れず、的外れかも知れませんが・・・。

    レジストリエディタを起動して、

     HKLM\Software の直下にキーを作ろうとしているのであれば「Software」 、
     HKLM\Software\abcd の
    直下にキーを作ろうとしているのであれば「abcd」、
    を右クリックしたときの「アクセス許可」設定が違うのではないですか?

    HomePremium の2台には「Users」に「フルコントロール」が与えられているとか・・・。
    なにか違いがありませんか?
    2008年6月30日 3:06
  • 貴重な情報ありがとうございます。

    早速確認してみます。

     

    またご報告します。

     

     

    2008年7月1日 1:42
  • こんにちは。

    kancargo様のお答えが正解でした。ありがとうございます。

     

    各メーカー(3社)からプレインストールされているWindowsVistaのPCの

    レジストリ「HKLM\Software」のアクセス許可を確認すると共通で

     

    Everyone

     フルコントロール 許可

     読み取り     許可

     特殊なアクセス  設定なし

     

    と、設定されていました。

     

     

    VistaOSを新規にインストールした場合は(SP1適用、未適用に限らず)、

    あたりまえの設定

     

    Users

     フルコントロール 設定なし

     読み取り     許可

     特殊なアクセス  設定なし

     

    となっています。

     

     

    各メーカー(3社、メーカー名は言えません)のレジストリのアクセス許可設定は

    ゲストユーザーでも書き込めてしまう設定です。

    (UACの意味が全くありません。それどころかXPよりもセキュリティレベルが低い。)

     

    かなり驚きましたが、原因がわかりました。ありがとうございました。

    2008年7月1日 6:31