Windowsのファイル権限は既存のファイルには適用されません

Windowsのファイル権限は既存のファイルには適用されません

最近、この新しい Windows 8.1 マシンをドメインに展開しましたが、他のデスクトップではまだ XP を使用しています。インストールするソフトウェアの 1 つは Oracle Client で、ドメイン管理者アカウントを使用してマシンに手動でインストールします (つまり、GPO などを通じて展開されるわけではありません)。

コンピューターのユーザー (管理者以外) には、ソフトウェアがインストールされているフォルダーへのフル アクセスが必要ですC:\oracle\client\[...]。XP マシンでは、コンピューターに管理者としてログインし、ルート フォルダーを右クリックしてC:\oracle[セキュリティ] に移動し、[computer_name]\usersグループにフル アクセスを与え、Apply to sub-folders設定を確認して [OK] をクリックします。

ここでは機能しません。ユーザーはすべての および にフルアクセスできfolderssub-foldersフォルダーを開いたり、どこにでも新しいファイルを作成したりできます。ただし、ユーザーはファイル自体にアクセスできず、 しか取得できませんAccess Denied。ただし、特定のファイルのアクセス許可を変更すると、ユーザーはそのファイルにアクセスできるようになります。

代わりにを使用して操作を繰り返し[domain]\[username]、フォルダーの所有権をユーザーに付与しましたが、成功しませんでした。フォルダーは正常ですが、ファイルは権限の変更を受け取りません。

ので、私は持っています:

  • フォルダとそのサブフォルダに適用される完全な読み取り/書き込み/実行権限
  • 権限はフォルダに適用されますが、既存のファイルには適用されません
  • 1 つのファイルの権限を変更すると機能します (ただし、そこには何千ものファイルがあります)

何か見落としているのでしょうか? XP と 7 のマシンでこれを何度も実行したので、8.1 が問題であると思うのですが、それについて何も見つけることができません。

ありがとう!

答え1

権限がApply to This folder and subfoldersではなく に設定されているようですThis folder, subfolders and files

したがって、次のように変更します。

ここに画像の説明を入力してください

もちろん、 の権限がすでに設定されている場合This folder, subfolders and files、チェックボックスを使用して権限を子オブジェクトに強制的に伝播する必要があるだけですReplace all child object permissions with inheritable permissions from this object

ここに画像の説明を入力してください

もちろん、PowerShellで実行することはできますが、どちらにもネイティブパラメータはありません。Set-ACL コマンドレットなので、スクリプトで権限を再帰的に適用する必要があります。そのため、アイカルクスこれには、フォルダーとサブフォルダー内のすべてのファイルに指定された権限を適用するためのパラメーターが含まれています。

関連情報