Windows TIPS
[System Environment]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

subinaclコマンドでアクセス制御リスト中のメンバーを検索する

解説をスキップして操作方法を読む

デジタルアドバンテージ 打越 浩幸
2010/08/06
対象OS
Windows 2000
Windows XP
Windows Server 2003
Windows Vista
Windows Server 2008
Windows 7
Windows Server 2008 R2
ファイルやフォルダ、レジストリなどのオブジェクトに対するアクセス権は、アクセス制御リストACLで管理されている。
ACLの中に、特定のユーザーやグループに対するエントリが含まれているかどうかは、subinaclコマンドで検索できる。

解説

 TIPS「icaclsコマンドでアクセス制御リスト中のメンバーを検索する」では、icaclsコマンドを使ってアクセス制御リストACL中に含まれる、特定のメンバー名を検査する方法を紹介した。同様の機能は、subinaclコマンドにも含まれているので、本TIPSで紹介する。subinaclコマンドの入手はTIPS「subinaclコマンドでオブジェクトのセキュリティ情報を表示させる(subinaclの基本)」を参照するか、以下のリンク先からダウンロードしていただきたい。

  操作方法

 subinaclでアクセス制御リスト中のメンバーを検索するには、/findsidというアクション(オプション・パラメータ)を指定する。

C:\>subinacl /? /findsid …ヘルプの表示
SubInAcl version 5.2.3790.1180

/FINDSID
--------

/findsid=DomainName\Account[=stop|continue]

     display the object name containing a reference to DomainName\Account
     in the security descriptor
     stop     - if Account is found, next parameters will be skipped
                and changes will not be applied
              - if Account is not found, next parameter will be executed
     continue - if Account found, next parameters will be executed
              - if Account not found, next parameters will be skipped
                and changes will not be applied

 /findsid=に続けて、検索したいメンバーを指定する。メンバー名は、単独のユーザー名(ローカル・コンピュータ上のユーザーになる)か「domain\user」「user@domain.com」のように指定する(TIPS「Windowsネットワークにおけるユーザー名とドメイン名の指定方法」参照)。「=stop」や「=continue」は、検索後に行うアクションを表している。メンバーが見つかったらそれを削除する、などというふうに利用できるが、そのような使い方については今後別TIPSで紹介する。

 subinaclでは検索する場所として単一のファイルやフォルダのほか、指定したフォルダ以下全部、レジストリ、サービス、共有、プロセス・オブジェクトなど、いくつか指定できる。詳細はTIPS「subinaclコマンドでオブジェクトのセキュリティ情報を表示させる(subinaclの基本)」を参照して欲しいが、例えばC:\Windowsフォルダ以下にある、Administratorsグループが含まれているACLのエントリを検索するには次のようにする。

C:\WINDOWS>subinacl /subdirectories *.* /findsid="administrators" …検索の実行
C:\WINDOWS\$968930Uinstall_KB968930$ : Perm. ACE 0 builtin\administrators

+File C:\WINDOWS\$968930Uinstall_KB968930$ …1つ目の結果
/control=0x0
/pace =builtin\administrators   ACCESS_ALLOWED_ACE_TYPE-0x0 …見つかったメンバー
        CONTAINER_INHERIT_ACE-0x2      OBJECT_INHERIT_ACE-0x1
    Type of access:
        Special acccess :  -Read  -Write  -Execute -Delete  -Change Permissions  -Take Ownership
    Detailed Access Flags :
…(中略)…
C:\WINDOWS\$hf_mig$ : Perm. ACE 0 builtin\administrators

+File C:\WINDOWS\$hf_mig$ …2つ目の結果
…(以下省略)…

 結果が長く見づらい場合は、/outputlog=オプションで出力先を指定するとよい。End of Article

subinacl /outputlog=c:\acl.txt /subdirectories *.* /findsid="everyone"

「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間