私は、ユーザーのホームディレクトリを作成するためにpowershellを使用すると同時に、そのためのアクセス許可を設定しようとしています。Powershellはホームディレクトリにアクセス許可を設定します
権限を設定できないこの問題が引き続き発生しているようです。私はこのエラーを取得しています:
$UserDir = [string]::Format("{0}\{1}", $HomeDirRoot, $user["UserName"])
$Account = [string]::Format("{0}\{1}", "Domain", $user["UserName"])
#Create Directory
New-Item -ItemType directory -Path $UserDir |Out-Null
# assign file permissions
$FileSystemAccessRights=[System.Security.AccessControl.FileSystemRights]"FullControl"
$InheritanceFlags=[System.Security.AccessControl.InheritanceFlags]::"ContainerInherit", "ObjectInherit"
$PropagationFlags=[System.Security.AccessControl.PropagationFlags]::None
$AccessControl=[System.Security.AccessControl.AccessControlType]::Allow
$NewAccessrule = New-Object System.Security.AccessControl.FileSystemAccessRule ` ($Account, $FileSystemAccessRights, $InheritanceFlags, $PropagationFlags, $AccessControl)
$CurrentACL=Get-ACL -path $UserDir
$CurrentACL.SetAccessRule($NewAccessrule)
Set-ACL -path $UserDir -AclObject $CurrentACL
私はこのコードのいくつかのバリエーションを試してみましたが、まだ同じエラーで終了している:ここで
Exception calling "AddAccessRule" with "1" argument(s): "Some or all identity references could not be translated." At line:1 char:1 + $permissions.AddAccessRule($userpermissions) + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : IdentityNotMappedException
は、コードのセクションです。私はACLオブジェクトを取得し、それを使って以下のようなパーミッションを設定しています:
$folder = "\\fs\home\SAMACCOUNTNAMEHERE"
$permissions = Get-Acl $folder
Set-Acl $folder $permissions
私はここで紛失しています。コードは私のマシン上のフォルダで動作するので、上記のようなフォルダでコードを実行しようとすると、ID参照に関連するエラーが発生します。
感謝の意を表します。
私はこれを試しました。私はアカウント変数をハードにコード化しました。ユーザーに何が認識されないのか?別のマシン(フォルダが存在する場所)でこのコードを実行すると違いが出るのですか? – MogulBomb
@NLarkinアカウントはローカルアカウントまたはADに接続していますか?マシンはドメインに参加していますか?また、 'Invoke-Command'を使ってマシン上でリモートでコマンドを実行しようとしましたか? – Richard