Web でいくつかの回答を見つけましたが、実際には探していたものではありませんでした。
問題は次のとおりです。「Networker」でファイルを復元する場合、ファイルの ACL は、ファイルが復元されるフォルダーの継承に関係なく、ファイルがバックアップされたときと同じものになります。つまり、ACL の継承は、新しく復元されたファイルには影響しません。
これにより、3 つのアカウントだけが ACL を変更する権利を持っているという問題が残ります。
- ユーザー、ファイルが属する
- ドメイン管理者
- システム アカウント
この問題を解決するには、自動化されたスクリプトを実行して ACL を修正し、正しい継承を有効にしたいと考えています。
スクリプトのシステム ユーザーは、3 人のうちの 1 人である必要があります。ユーザーが変更されているため、有効な選択ではありません。また、ドメイン管理者の資格情報を残したり、ドメイン管理者権限をサービス アカウントに付与したりしたくありません。
これにより、仕事をするためのシステムアカウントが残ります。ここで質問があります。
システム アカウントの資格情報を使用して、powershell でタスクを実行するにはどうすればよいですか?
私は試した
$username = "NT Authority\System"
$password = ConvertTo-SecureString -String "" -AsPlainText -Force
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist @($username, $password)
パスワードが空なので、それを使用して資格情報を実際に作成することはできません。
すべてのロケールでのアカウントの名前は .\LocalSystem です。名前、LocalSystem または ComputerName\LocalSystem も使用できます。このアカウントにはパスワードがありません。 https://msdn.microsoft.com/de-de/library/windows/desktop/ms684190(v=vs.85).aspx
だから今、私はこれをどのように機能させることができるかについて少し混乱しています。
編集: ファイル システムは EMC で実行され、実際の Windows ファイル システムではなく、Linux システムに接続されているだけです。したがって、ローカル管理者アカウントはありません。
TL;DR
PowerShell でシステム アカウントを使用してファイルの ACL 権限を継承したいのですが、どうすればよいですか?