私はADで新しいドメインユーザーアカウントを作成し、関連するアクセス許可を持つファイルサーバーにホームディレクトリを作成するpowershellスクリプトを実行しています。Powershellスクリプトでユーザーのホームフォルダを作成し、アクセス許可を設定する
私の問題は、私はアクセス許可セットを取得できないということです。
以下のコードでは、my_fileServerはファイルサーバー名です。 ssoは、以下のテストコードで "user9999"に設定されているシングルサインオンIDを意味します。
ご協力いただきありがとうございます。
Set-Variable homeDir -option Constant -value "\\my_fileServer\Users"
Set-Variable sso -option Constant -value "user9999"
# If the folder for the user does not exist, make a new one and set the correct permissions.
if ((Test-Path "$homeDir\$sso") -eq $false)
{
try
{
$NewFolder = New-Item -Path $homeDir -Name $sso -ItemType "Directory"
$Rights = [System.Security.AccessControl.FileSystemRights]"FullControl,Modify,ReadAndExecute,ListDirectory,Read,Write"
$InheritanceFlag = [System.Security.AccessControl.InheritanceFlags]::None
$PropagationFlag = [System.Security.AccessControl.PropagationFlags]::None
$objType =[System.Security.AccessControl.AccessControlType]::Allow
$objUser = New-Object System.Security.Principal.NTAccount "my_full_domain_name\$sso"
$objACE = New-Object System.Security.AccessControl.FileSystemAccessRule `
($objUser, $Rights, $InheritanceFlag, $PropagationFlag, $objType)
$ACL = get-acl -Path $NewFolder
$ACL.AddAccessRule($objACE)
$objReturn = Set-ACL -Path "$homeDir\$sso" -AclObject $ACL
$objReturn
}
catch
{
$msg = $_
$msg
}
}
ホームフォルダは作成されてもOKですが、ユーザーのアクセス許可を確認するとボックスには何も表示されません。
Set-Aclは値を返しません。 –