管理者として作成されたファイルに元の継承された権限を再適用するにはどうすればよいですか?

管理者として作成されたファイルに元の継承された権限を再適用するにはどうすればよいですか?

誰かがこれにきっぱり答えてくれることを願います。このことで何ヶ月も気が狂いそうです。

  • プラットホーム: Windows サーバー、どのバージョンでもこの問題は発生しません。ワークステーション
  • 問題:

フォルダ内で、ファイルを作成するたびに管理者(コマンド プロンプトまたは「管理者として」実行されたバッチから、接続しているユーザーは作成されたファイルを編集できません。権限セットには「特別な権限」(それが何を意味するかはわかりません) を持つユーザーがいませんが、ワークステーションではこれは発生しません。なぜでしょうか?

私は ICACLS のさまざまなバージョンを試しましたが、その中で検索結果に常に返されるものは次のとおりです。ICACLS folder /reset /C /L /Tこれは役に立ちません。権限セットに含まれていない限り、ユーザーはファイルを編集できません。

私が見つけた唯一の回避策は、次のようにユーザーにフルアクセスを強制的に許可することです。icacls folder /grant %USERNAME%@%USERDNSDOMAIN%:F /T /C /Q

問題は、ファイルの権限セットがまだ必要な内容と一致していないことです。

  • 作成者所有者が見つかりません
  • COMPUTERNAME\Users に継承がありません ("特別なアクセス許可")

何か間違っているのでしょうか?

管理者としてバッチを実行する場合、作成されたファイルに管理者としてバッチを実行していない場合と同じ権限を持たせたい場合のベスト プラクティスは何ですか? 複数の条件を持つバッチを記述せずに、権限を適切な状態に実際にリセットすることは可能ですか?

答え1

何も間違ったことをしているわけではなく、システムは設計どおりに動作していると思います。権限のないセッション内で昇格されたアカウントを使用してスクリプトを実行すると、管理者としてファイルが作成されます。私の理解では、ログインしたユーザー アカウントではなく、管理者グループのメンバーが完全な権限を持ちます。バイパスする方法とまったく同じように、ユーザー権限をファイルに追加する必要があります。スクリプトで takeown %USERNAME% を使用して、ファイルの所有者を変更することもできます。バッチ ファイルに条件を追加する必要があると思います。

答え2

解決策はありませんが、回避策は 1 つあります。選択したユーザーにフル アクセスを許可して、権限を強制的に適用します。

icacls folder /grant %USERNAME%@%USERDNSDOMAIN%:F /T /C /Q

関連情報