По сути, я пытаюсь добиться вывода с 4 столбцами / списком (в данном случае я экспортирую в виде текста). Get-MailboxPermission дает мне свойство идентичности, пользователя, прав доступа, но это не так. дай мне свойство "менеджер". Мне нужно определить, куда этот конкретный пользователь сообщает. Итак, я попробовал PSCustomObject и надеюсь, что смогу поместить результаты в массив. Смотрите скрипт ниже
$GETMAILBOXPERM = Get-Content C:\Users\Account\Desktop\MailboxUsers\MAILBOXESUSERS.txt | ForEach-Object {Get-MailboxPermission $_ |
where {
($_.User -notlike ‘*NT AUTHORITY*’) -and
($_.User -notlike ‘*S-1-5-21-*’) -and
($_.User -notlike ‘*NAMPRD08*’) -and
($_.User -notlike ‘*PRDTSB01*’) -and
($_.User -notlike ‘*0365Admin*’) -and
($_.User -notlike ‘*Discovery Management*’) -and
($_.User -notlike ‘*NAMPR08A005*’) -and
($_.User -notlike ‘*NT AUTHORITY*’)
}
}
$Results = foreach( $Mailbox in (get-content C:\Users\Account\Desktop\MailboxUsers\MAILBOXESUSERS.txt))
{
$Users = Get-User $Mailbox
if ($Users){
foreach ($User in $Users){
[pscustomobject]@{
DisplayName = $User.name
Account = $GETMAILBOXPERM.user
Manager = $User.manager
Access = $GETMAILBOXPERM.accessrights
}
}
}
}
$Results | Format-List -Property DisplayName, Account, Manager, Access | Out-File C:\Users\Account\Desktop\MailboxUsers\mailbox4.txt
Вот вывод в текстовом файле. Я правильно понимаю DisplayName и Manager, но учетная запись и доступ из текстового файла, похоже, не равны l oop.
DisplayName: MAILBOX1
Account: {user1@domain.ca, user2@domain.ca, user3@domain.ca, user4@domain.ca...}
Менеджер: MANAGER1
Доступ: {FullAccess, FullAccess, FullAccess, FullAccess ...}
DisplayName: MAILBOX2
Учетная запись: {user1@domain.ca, user2@domain.ca, user3@domain.ca, user4@domain.ca...}
Менеджер: MANAGER2
Доступ: {FullAccess, FullAccess, FullAccess, FullAccess. ..}