正在尝试导入具有交换权限的CSV,例如:
Folder,User,Permissions
Folder1,TheUser,PERM1 PERM2 PERM3 PERM4我正在尝试首先导入这些值,作为CSV的一个单独列。如何在权限列中做到这一点呢?其次,尝试将这些权限应用于Add-PublicFolderClientPermission cmdlet。无论我如何尝试导入权限,我都会收到一个错误,指出权限不是Exchange权限等类型
有谁能帮忙吗?
发布于 2021-06-05 04:24:25
我假设您的CSV具有有效的文件夹标识、用户名和邮箱文件夹访问权限条目:
# Import the csv and look at the first row:
$csv = Import-CSV C:\path\to\file.csv
$csv[0]|fl
Folder : \TestParent\TestChild
User : john.smith
Permissions : ReadItems CreateItems EditOwnedItems您的示例中没有文件夹ID所需的斜杠,因此请确保您可以实际解析CSV中的所有公共文件夹:
# Should not return any errors
$csv | Select -Unique -Expand Folder | %{Get-PublicFolder $_}如果你在这方面做得很好,那就试试这个:
Foreach ($Row in $CSV) {
# Convert the rights to an object we can use:
$Rights = $Row.Permissions -split ' ' | Foreach {
[Microsoft.Exchange.Management.StoreTasks.MailboxFolderAccessRight]::new($_)}
# Add rights entry to target folder
Get-PublicFolder $Row.Folder | Add-PublicFolderClientPermission -User $Row.User -AccessRights $Rights
}https://stackoverflow.com/questions/67829840
复制相似问题