web-dev-qa-db-ja.com

ユーザーが他のファイルやフォルダーへの変更権限を付与しながら、1つのフォルダーを削除できないようにするにはどうすればよいですか?

親フォルダー内の他のすべてのファイルとフォルダーに対する変更アクセス許可をユーザーに付与しながら、ユーザーが親フォルダー内の特定のフォルダーを誤って削除しないようにしようとしています。ただし、この特定のフォルダ内のファイルやフォルダを変更することもできます。

同様の問題に対するこのコメントでは、私の問題は非常によく説明されていますが、このコメントに対する答えはありませんでした。 https://superuser.com/a/977180/554054 これは私の構造です:

Folder A
|-Folder B
|-Folder C
| |+Folder E
| | |+ a.doc
| |+Folder F
| | |+ b.doc
| |+c.doc
|-D
  • フォルダA-読み取り/実行
  • フォルダーB/D-読み取り/実行(Aから継承)+ Fils /サブフォルダーの読み取り/書き込み/削除
  • フォルダーC-読み取り/実行(Aから継承)+フォルダーEを除く、フィル/サブフォルダーの読み取り/書き込み/削除!このフォルダは削除できませんが、フォルダ内では、ユーザーはサブフォルダとファイルを読み取り、書き込み、削除できる必要があります。

パーミッションの組み合わせのさまざまな方法を試しましたが、何も機能しませんでした。この問題を解決する方法を誰かが考えていますか?

フォルダーEの詳細設定の2つのスクリーンショットを次に示します。 詳細設定フォルダーEユーザー "Bearbeiter"の継承された特別なアクセス許可

2
Astrid

親フォルダー内の他のすべてのファイルとフォルダーに対する変更アクセス許可をユーザーに付与しながら、ユーザーが親フォルダー内の特定のフォルダーを誤って削除しないようにしようとしています。ただし、この特定のフォルダ内のファイルやフォルダを変更することもできるはずです

NTFSセキュリティでフォルダの削除や不注意によるドラッグアンドドロップを防止します

特定のフォルダが deleted または dragged and drop 他の場所にドラッグおよびドロップされないようにしたい場合は、暗黙の権限が昇格されていても、このアクションが実行されないようにするユーザーアカウントまたはセキュリティグループの _FOLDER ONLY_ に対する明示的なDENY

[〜#〜] icacls [〜#〜] をローカルパスに使用して、このフォルダーのセキュリティロックを完了することができます(例: _C:\Path\FolderA\FolderE_ )またはUNCパス(例: _\\server\share\FolderA\FolderE_ )。


昇格されたコマンドから実行するICACLS構文の例プロンプト

_ICACLS "\\server\share\FolderA\FolderE" /deny "<UserOrGroupNameToDeny>":(DE)
_

使用された権限

_/deny user:permission
   Explicitly deny the specified user access rights.
   This will also remove any explicit grant of the 
   same permissions to the same user.

perm is a permission mask and can be specified in one of two forms:
   a comma-separated list in parentheses of specific rights:
         DE - delete
_

これは何をしますか

その構文でこれらのオプションを使用して上記を実行すると、明示的なDENYがNTFS DELETE権限に設定されます _FOLDER ONLY_ セキュリティグループの特定のユーザーアカウント

次の方法で、ユーザーアカウントまたはセキュリティグループのフォルダーへの拒否アクセス許可を確認できます。

  • _right-click_コマンドで使用したフォルダー、
  • を選択 Security タブ、
  • _Group or user name:_領域で、コマンドで使用したアカウントまたはグループまでスクロールするか、選択して強調表示します。
  • _Permissions for Administrators_エリアに、AllowおよびDenyのNTFSアクセス許可属性が表示されます。
  • コマンドで使用したアカウントまたはグループの_special permissions_行のDENY列にチェックマークが表示されます

enter image description here

  • 選択する Advanced そしてに行く Permissions タブ
  • NameフィールドのPrincipalについて、コマンドで使用したDENY(またはType)値を確認します
  • Permissions(またはAccess)フィールドにはDeleteが表示され、_Apply to_(または_Applies to_)には_this folder only_が表示されます。

enter image description here


ノート

ALLOW DELETE属性のチェックを外すことは、そのままにして、同じセキュリティグループまたはユーザーアカウントに対して別個のNTFS ACLルールを作成し、DELETEセキュリティを明示的に拒否することと同じではないことに注意してください。

このソリューションでは、この方法でDELETEを禁止していません

(WRONG)

enter image description here

このソリューションは、このレベルの削除をこのフォルダのみに明示的に拒否します

(正しい)

enter image description here

(正しい)

enter image description here


さらに読むとリソース

6
Pimp Juice IT

これは不可能です。変更権限を削除することでフォルダーを削除できないようにすることができますが、そのフォルダー内のすべてのファイルに自動的に同じ権限が与えられ、そのフォルダー内の新しいファイルで作業することができなくなります。

サブフォルダーを作成し、権限の継承を無効にして、ユーザーがそれらのフォルダーで作業できるようにすることができますが、残りのフォルダーをサブフォルダーに移動するか、これを行わないことを決定する必要があります。

親フォルダーとは異なる権限をファイルに付与することもできますが、その場合、ユーザーは既存のファイルを削除するなど、編集することしかできません。ただし、このフォルダに新しいファイルをコピーまたは作成する場合はできません。

また、提案しているファイルシステムは悪い習慣であることにも注意してください。すべてのサブファイルに継承を設定して、できるだけ高いレベルで権限を設定する必要があります。その理由は、すべての子フォルダに権限をプッシュできるためです。これが上位のフォルダから行われた場合、すべての権限が削除されます。

ただし、フォルダのコンテンツは削除/移動できるのに、フォルダを削除/移動できないようにすることはできません。削除が非常に重要な場合は、ボリュームシャドウコピーとオプションでバックアップを有効にします。フォルダを移動すると、VSS内にも移動します。削除した場合は、VSSから削除を取り消すことができます(以前のバージョンを復元)。移動が懸念され、移動先が見つからない場合は、毎日バックアップを作成してください。もちろん、これらのフォルダを削除/移動しないようにユーザーに指示することもできます。

この種のアクションは通常、人々が移動することになっていないことに気づいていないためであり、誤って削除した場合は、VSSを使用して元に戻すことができます。

0
LPChip