1

메신저에 새로 생성 된 사용자에 대한 일부 권한을 설정하려고합니다.powershell을 통한 폴더 사용 권한

$Rights = [System.Security.AccessControl.FileSystemRights]::FullControl 
$Inherit = @([System.Security.AccessControl.InheritanceFlags]::ContainerInherit,[System.Security.AccessControl.InheritanceFlags]::ObjectInherit) 
$Propagation = [System.Security.AccessControl.PropagationFlags]::None 
$Access =[System.Security.AccessControl.AccessControlType]::Allow 
$ACL = New-Object System.Security.Principal.NTAccount "localdomain\$userprincipalname" 
$objACE = New-Object System.Security.AccessControl.FileSystemAccessRule($ACL, $Rights, $Inherit, $Propagation, $Access)      
$ACL = Get-Acl -Path $userDir 
$ACL.AddAccessRule($objACE) 
Set-ACL -Path $userDir -AclObject $ACL 

내가 AddAccessRule

Exception calling "AddAccessRule" with "1" argument(s): "Some or all identity references could not be translated." 
+ CategoryInfo   : NotSpecified: (:) [], MethodInvocationException 
+ FullyQualifiedErrorId : DotNetMethodException 

에 전달하는 매개 변수와 관련이 얻을 오류 그러나 나는 어떤을 볼 수 없습니다 : 내가 폴더를 만든 후 , 나는 다음과 같은 다양한 권한을 설정하려고 여기에 오류가있어서 정말 눈이.니다.

+0

'$ userprincipalname' 값을 확인 했습니까? 어쩌면 맞지 않을까요? –

+0

예,'$ userprincipalname'과'$ userDir'는 스크립트 앞부분에서 지정한대로 정확합니다. – Alexander

+1

내 도메인의 코드가'$ userprincipalname'에 기존 samUserName과'$ userDir'에 대한 기존 경로를 제공한다고 말할 수 있습니다. –

답변

2

그래, 내 솔루션이 작동하고 찾을 수있는 한 폴더에 대한 권한을 설정하는 방법입니다.

$Rights = [System.Security.AccessControl.FileSystemRights]::FullControl 
$Inherit = @([System.Security.AccessControl.InheritanceFlags]::ContainerInherit,[System.Security.AccessControl.InheritanceFlags]::ObjectInherit) 
$Propagation = [System.Security.AccessControl.PropagationFlags]::None 
$Access =[System.Security.AccessControl.AccessControlType]::Allow 
$ACL = New-Object System.Security.Principal.NTAccount "localdomain\$userprincipalname" 
$objACE = New-Object System.Security.AccessControl.FileSystemAccessRule($ACL, $Rights,$Inherit, $Propagation, $Access)      
$ACL = Get-Acl -Path $userDir 
$ACL.AddAccessRule($objACE) 
Set-ACL -Path $userDir -AclObject $ACL