web-dev-qa-db-ja.com

IIS6互換モードでIIS7のroot \ MicrosoftIISv2を読み取るために必要なWMI権限

IIS7(Windows Server 2008)をWMI IIS6 APIを使用してリモートで管理する必要があります。したがって、アクセスするIIS6 WMI互換性およびIIS6メタベース互換性ロールを追加しましたroot\MicrosoftIIsv2名前空間。

リモートマシンの管理者ではないドメインアカウントを持っています。この権利があれば、すべてが大丈夫です。

ドメインアカウントがroot\MicrosoftIIsv2 WMI名前空間にリモートでアクセスできるように、これらの権限を構成しました。 これらの権限はIIS6およびWindows Server 2003で完全に機能することに注意してください

DCOM:

  • Distributed COM Usersのアカウント> DCOMへのリモートおよびローカルアクセス

WMI:

  • Root\CIMV2(ここにもアクセスが必要です)>メソッドの実行、アカウントの有効化、リモートの有効化
  • Root\Default(ここにもアクセスが必要です)>メソッドの実行、アカウントの有効化、リモートの有効化
  • Root\MicrosoftIISv2>メソッドの実行、アカウントの有効化、プロバイダーの書き込み、リモートの有効化

IISメタベース(メタベースエクスプローラー):

  • LM>フルコントロール(W3SVCはこれらのアクセス許可を継承します)

C:\ Windows\System32\inetsrvにもアクセスを許可しようとしました。必要かどうかわからない。

私の問題は:

IIS WebSites(\ root\MicrosoftIISv2:IIsWebServerSetting.Name = "W3SVC/*")をリストすることはできません。「アクセス拒否」が表示されませんが、何も表示されませんが返されます。

  • 私のAPIおよびPowerShellテストでは、root\MicrosoftIISv2名前空間で接続してクエリを実行できます
  • IIsComputerクラスを読むことができる
    • 例:Get-WmiObject IIsComputer -namespace "ROOT\MicrosoftIISv2" -authentication PacketPrivacy | SELECT *
  • WebサイトをリストするためにIIsWebServerSetting、IIsWebServer ...を読み取ることができません:クエリは空のコレクションを返します
    • 例:Get-WmiObject IIsWebServerSetting -namespace "ROOT\MicrosoftIISv2" -authentication PacketPrivacy | SELECT ServerComment
  • アカウントが管理者の場合、すべてのクエリは完全に機能しますすでに述べたとおり
  • PacketPrivacy認証を使用しています

FI:管理者権限の有無にかかわらず、警告イベント5605を受け取りましたが、影響はないようです。

Root\MicrosoftIISv2名前空間は、RequiresEncryptionフラグでマークされています。スクリプトまたはアプリケーションに適切な認証レベルがない場合、この名前空間へのアクセスが拒否される可能性があります。認証レベルをPkt_Privacyに変更し、スクリプトまたはアプリケーションを再度実行します


管理者アカウントでIIS 6 Metabase Explorerを使用すると、いくつかの詳細情報があります。非管理者の権限が正しく継承されていることがわかりますアカウント。

しかし、管理者以外のアカウントを使用して接続しようとすると、LMノードを一覧表示できますが、 "アクセスが拒否され、キーの取得に失敗しましたデータ "子ノードを参照しようとすると

さらに確認します。


私はWMIアクティビティを追跡しようとしましたが、すべて問題ありません。これは、問題がIIS Rightsにあることを確認する傾向があります。

6
JoeBilly

解決しました。

WMIとIISメタベースの権利は、IIS 6.で行うのと同じように設定する必要があります。したがって、それらは私にとって正しいものでした。

仕様はIISメタベースにあります。まず、IIS 7では、W3SVC権限はルートから完全に継承されますが、アプリケーションプールを処理する場合は、W3SVC/AppPools権限をIIS 6に設定します。

「互換性」があるため、主な違いはIIS 7メタベースファイルシステムです。IIS 6では、inetsrvフォルダー( Users)のデフォルトとメタベースACLで十分です。

On IIS 7、権利はIISメタベースおよびIIS 7構成で設定する必要がありますfolder:%SYSTEMROOT%/system32/inetsrv/config(そして。configファイル)デフォルトでは、Administratorsのみ(それが理由です)は管理者権限で完全に機能しています)、他の一部の予約グループはこのフォルダにアクセスできます。

別のポイントとして、アプリケーションプールでStopのようなメソッドを実行する必要がある場合、この機能には構成フォルダに対するWrite権限が必要です。

1
JoeBilly