[HOWTO] Xcacls.exe を使用して NTFS アクセス許可を変更する方法

文書翻訳 文書翻訳
文書番号: 318754 - 対象製品
すべて展開する | すべて折りたたむ

目次

概要

この資料では、XCACLS (Extended Change Access Control List) ツール (Xcacls.exe) を使用したファイルまたはフォルダの NTFS アクセス許可の変更方法と表示方法について説明します。

Xcacls.exe を使用すると、エクスプローラでアクセスできるファイル システムのすべてのセキュリティ オプションをコマンド ラインから設定できます。Xcacls.exe では、ファイルのアクセス制御リスト (ACL) の表示と変更を行うことができます。

Xcacls.exe は、Windows 2000 Professional または Windows 2000 Server の無人インストールを行う場合に特に役立ちます。このツールを使用することにより、オペレーティング システムが存在するフォルダの初期のアクセス許可を設定できます。Xcacls.exe を使用すると、ソフトウェアをサーバーまたはワークステーションに配布する際に、ユーザーがフォルダまたはファイルを削除することを簡単に防止できます。

Xcacls.exe ユーティリティは、Windows 2000 リソース キットに含まれています。

Xcacls.exe ユーティリティは、次のマイクロソフト Web サイトからダウンロードできます。
http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/xcacls-o.asp

Xcacls.exe の構文

xcacls file name [/T] [/E] [/C] [/G user:perm;spec] [/R user] [/P user:perm;spec [...]] [/D user [...]] [/Y]
file name - 通常は、ACL またはアクセス制御エントリ (ACE) の適用先のファイルまたはフォルダの名前を指定します。この名前には、すべての標準的なワイルドカード文字を使用できます。

/T - 現在のフォルダとそのすべてのサブフォルダを再帰的に検索し、見つかったファイルまたはフォルダにアクセス許可を適用します。

/E - 既存の ACL を置き換えず、指定したアクセス許可を既存の ACL に追加します。このオプションを指定しない場合、以前に適用されたすべての ACE が失われます。たとえば、XCACLS test.dat /G Administrator:F を実行すると、管理者以外が test.dat ファイルにアクセスできなくなります。

/C - "アクセス拒否" のエラー メッセージが発生した場合でも Xcacls.exe を続行します。/C を指定しない場合、"アクセス拒否" のエラーが発生すると、Xcacls.exe が停止します。

/G user:perm;spec - file name に一致するファイルまたはフォルダへのアクセスをユーザーに許可します。
  • user には、アクセス許可を割り当てるユーザーを指定します。
  • perm には、以下の値を使用して、ファイルに適用するアクセス許可、またはフォルダに適用する特殊なファイル アクセス許可マスクを指定します。
    • R : 読み取り
    • C : 変更 (書き込み)
    • F : フル コントロール
    • P : アクセス許可の変更 (特殊なアクセス許可)
    • O : 所有権の取得 (特殊なアクセス許可)
    • X : 実行 (特殊なアクセス許可)
    • E : 読み取り (特殊なアクセス許可)
    • W : 書き込み (特殊なアクセス許可)
    • D : 削除 (特殊なアクセス許可)
  • spec では、フォルダにのみ適用する特殊なアクセス許可を指定します。spec には、perm に使用できる値と以下の特殊な値を使用できます。
    • T : 指定なし。フォルダ自体の ACE を設定します。フォルダ内に作成される新しいファイルに適用する ACE は指定しません。この値の後に、少なくとも 1 つのアクセス許可を指定する必要があります。セミコロン (;) と T の間に指定した値 (文字) は無視されます。

      • ファイルに適用できるアクセス許可、またはフォルダに適用できるファイルおよびフォルダの特殊なアクセス許可は、perm で指定できるアクセス許可と同じです。これらのアクセス許可の詳細については、Windows 2000 オペレーティング システムのマニュアルを参照してください。
      • 上記以外のアクセス許可はすべて、基本的なアクセス許可を組み合わせて指定できます (これらのアクセス許可はエクスプローラでも設定できます)。一方、LIST や READ など、フォルダの特殊なアクセス許可は設定できません。
/R user - ユーザー user のすべてのアクセス許可を無効にします。

/P user:perm;spec - ユーザー user の現在のアクセス許可を、perm;spec で指定するアクセス許可に置き換えます。perm および spec の使用方法は /G オプションと同じです。この資料の「Xcacls.exe の例」を参照してください。

/D user - ファイルまたはディレクトリに対するユーザー user のアクセスを拒否します。

/Y - ユーザーのアクセス許可を置き換える際の確認を無効にします。このオプションを指定しない場合、アクセス許可の置き換えを確認するメッセージが表示されます。XCACLS をバッチ ルーチンで使用するときは適切な応答を入力するまでルーチンが応答を停止します。Xcacls.exe をバッチ モードで使用する場合、この確認処理を回避するには、/Y オプションを指定してください。

Xcacls.exe を使用したアクセス許可の表示

Xcacls.exe を使用して、ファイルまたはフォルダのアクセス許可を表示することもできます。たとえば、コマンド プロンプトで xcacls C:\winnt と入力し、Enter キーを押します。通常、次のような出力が得られます
c:\WINNT BUILTIN\Users:R
           BUILTIN\Users:(OI)(CI)(IO)(special access:)
                                     GENERIC_READ
                                     GENERIC_EXECUTE
           BUILTIN\Power Users:C
           BUILTIN\Power Users:(OI)(CI)(IO)C
           BUILTIN\Administrators:F
           BUILTIN\Administrators:(OI)(CI)(IO)F
           NT AUTHORITY\SYSTEM:F
           NT AUTHORITY\SYSTEM:(OI)(CI)(IO)F
           BUILTIN\Administrators:F
           CREATOR OWNER:(OI)(CI)(IO)F
				
出力のかっこ内は ACL フラグです。それぞれのフラグには、次のような意味があります。
  • IO : 継承のみ - この ACE が現在のオブジェクトに適用されていないことを示します。
  • CI : コンテナ継承 - 下位コンテナがこの ACE を継承することを示します。
  • OI : オブジェクト継承 - 下位ファイルが ACE を継承することを示します。
  • NP : 継承なし - 現在のコンテナが継承済みの ACE を下位オブジェクトがこれ以上継承しないことを示します。
各行の最後の文字はアクセス許可を示します。以下に例を示します。
  • F : フル コントロール
  • C : 変更
  • W : 書き込み

Xcacls.exe の例

例 1

コマンド プロンプトで XCACLS *.* /G administrator:RW /Y と入力し、Enter キーを押します。現在のフォルダ内にあるすべてのファイルおよびフォルダの ACL が置き換えられます。サブフォルダのスキャンやアクセス許可を置き換えるときの確認は行われません。

例 2

コマンド プロンプトで XCACLS *.* /G TestUser:RWED;RW /E と入力し、Enter キーを押します。この例でフォルダに追加される ACE は、フォルダ内に作成される新しいファイルにも継承されます。このコマンドにより、このフォルダ内に作成されるすべての新しいファイルの読み取り、書き込み、実行、および削除の権限が TestUser に与えられます。ただし、フォルダ自体では、読み取りアクセス許可と書き込みアクセス許可のみが与えられます。

例 3

コマンド プロンプトで XCACLS *.* /G TestUser:R;TRW /E と入力し、Enter キーを押します。この例では、新しいファイルの継承エントリを作成せずに、フォルダの読み取りおよび書き込みアクセス許可を与えます。その結果、フォルダ内に作成される新しいファイルには、TestUser の ACE は継承されません。既存のファイルには、読み取りアクセス許可を持つ ACE が作成されます。

NTFS アクセス許可のガイドライン

NTFS アクセス許可を割り当てるためのガイドラインは以下のとおりです。
  • ファイルおよびフォルダへのアクセスを制御するには、NTFS アクセス許可を使用します。
  • アクセス許可は、個人ユーザーではなくグループに割り当てます。
  • NTFS ファイル アクセス許可は NTFS フォルダ アクセス許可よりも優先されます。
  • ファイルやフォルダで設定できるアクセス許可は、そのオブジェクトの所有者または管理者が制御します。
  • フォルダのアクセス許可を変更する際は、コンピュータにインストールされているプログラムに注意します。各プログラムにより、[継承可能なアクセス許可を親からこのオブジェクトに継承できるようにする] チェック ボックスがオンになっている独自のフォルダが作成されます。そのようなフォルダの親フォルダでアクセス許可を変更すると、プログラムで問題が発生することがあります。

    警告 : ファイルおよびフォルダの多くは継承によってアクセス許可が設定されています。そのため、1 つのフォルダのアクセス許可を変更することによって多くのフォルダのアクセス許可が変更されることがあります。

関連情報

関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
245015 Xcacls.exe を使用してフォルダとファイルのアクセス許可を出力する方法
135268 CACLS.EXE をバッチ ファイルで使用する方法

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 318754 (最終更新日 2003-11-20) を基に作成したものです。

プロパティ

文書番号: 318754 - 最終更新日: 2004年5月26日 - リビジョン: 3.0
この資料は以下の製品について記述したものです。
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
キーワード:?
kbhowto kbhowtomaster kbenv KB318754
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com