Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Exchange PowerShell:导出邮箱文件夹访问权限_Powershell_Exchange Server_Windows Server - Fatal编程技术网

Exchange PowerShell:导出邮箱文件夹访问权限

Exchange PowerShell:导出邮箱文件夹访问权限,powershell,exchange-server,windows-server,Powershell,Exchange Server,Windows Server,使用PowerShell,我希望导出特定OU中用户的Exchange环境中的所有邮箱,其中用户在文件夹级别上的“默认”访问权限级别不等于“无”。为此,我使用以下命令: $AllMailbox = Get-Mailbox -OrganizationalUnit "DNofOU" -ResultSize Unlimited $ResultData = foreach ($Mailbox in $AllMailbox) { Get-MailboxFolderPermissi

使用PowerShell,我希望导出特定OU中用户的Exchange环境中的所有邮箱,其中用户在文件夹级别上的“默认”访问权限级别不等于“无”。为此,我使用以下命令:

$AllMailbox = Get-Mailbox -OrganizationalUnit "DNofOU" -ResultSize Unlimited 
$ResultData = foreach ($Mailbox in $AllMailbox) 
    {
        Get-MailboxFolderPermission $Mailbox | Where-Object {$_.User -Match "Default" -AND $_.AccessRights -NotMatch "None"} | Select-Object Identity,AccessRights,@{Name="Name"; Expression={$Mailbox.Name}}
    }  
$ResultData | Export-CSV -Path C:\temp\MailboxFolderPermissions.csv
但是,在运行此命令时,出现以下错误:

无法处理参数“Identity”上的参数转换。无法转换类型为“Deserialized.Microsoft.Exc”的“DisplayNameOfMailbox”值 “hange.Data.Directory.Management.Mailbox”键入“Microsoft.Exchange.Configuration.Tasks.MailboxFolderIdParameter”。 +CategoryInfo:InvalidData:(:)[Get-MailboxFolderPermission],参数Bindin…mationException +FullyQualifiedErrorId:ParameterArgumentTransformationError,Get-MailboxFolderPermission +PSComputerName:FQDNofExchangeServer


该环境基于Windows Server 2008 R2服务器上的Exchange 2010,该服务器的PowerShell版本为2.0。在远程连接到Exchange服务器时,也可以从PowerShell版本为4.0的Windows Server 2012 R2服务器执行此操作。

对我来说,使用对象的完整规范名称效果更好。 像这样:

我不确定这是否已经找到了答案,但我想提供我的意见,告诉你如何可能获得组织单位中的所有邮箱

$mailboxArray = Get-Mailbox -OrganizationalUnit "example.com/Accounts" -ResultSize Unlimited