特定の Exchange 2007 メールボックスへのフル アクセス権を持つユーザーのリストを作成するように依頼されることがあります。現時点ではこれを手動で行っていますが、理想的には Powershell で行いたいと考えています。
とにかく、フル アクセス許可のリストを作成する方法はありますか (代理送信権も役立ちます)。
ありがとう、ジョニー
特定の Exchange 2007 メールボックスへのフル アクセス権を持つユーザーのリストを作成するように依頼されることがあります。現時点ではこれを手動で行っていますが、理想的には Powershell で行いたいと考えています。
とにかく、フル アクセス許可のリストを作成する方法はありますか (代理送信権も役立ちます)。
ありがとう、ジョニー
In addition to Slipsecs answer there is an alternative to the Send-As permissions audit.
$(Get-Mailbox -Identity mailboxName).GrantSendOnBehalfTo | ft Name
This returns only manually added users and no auto generated ones.
Thanks again Slipsec with your help on this!
Send-As アクセス許可は Active Directory に保存されるため、取得するのは少し難しいです。2 つの結果から関心のあるプロパティを結合したい場合は、Add-Member を使用できます。
全権アクセス:
get-mailbox | %{$foo = $_; Get-MailboxPermission $foo | ?{$_.AccessRights -eq "FullAccess" -and $_.IsInherited -eq $false}} | ft {$foo},User,AccessRights
差出人:
get-mailbox | %{$mailbox = $_; Get-ADPermission $mailbox.DistinguishedName | ?{$_.ExtendedRights -like "Send-As" -and $_.User -notlike "NT AUTHORITY\SELF"}} | ft {$mailbox},user,{"Send-As"}
get-mailbox -identity MailBoxName | %{$foo = $_; Get-MailboxPermission $foo | ?{$_.AccessRights -eq "FullAccess" -and $_.IsInherited -eq $false}} | ft {$foo},User,AccessRights
特定のメールボックスに対するユーザーのアクセス許可を探している場合。MailBoxName を、レポートを実行しようとしているメールボックスの正確な名前に置き換えます。メールボックスとエイリアスの名前に関しては KeySensitive です。
get-mailbox | %{$foo = $_; Get-MailboxPermission $foo | ?{$_.AccessRights -eq "FullAccess" -and $_.IsInherited -eq $false}} | ft {$foo},User,AccessRights
上記のコマンドで、fooをメールボックスまたはユーザー名に置き換えますか?コマンドを試しましたが、オブジェクトがnullであるため、バインドできないと表示されます。ご協力いただきありがとうございます。
これは古いことは知っていますが、他の誰かが助けを求めてこのスレッドに出くわした場合に備えて、OPの最後の質問に答えるため$foo
に、コマンドを実行する前に定義する必要がある変数を表します。例:
$foo = 'Example User'
get-mailbox | %{$foo = $_; Get-MailboxPermission $foo | ?{$_.AccessRights -eq "FullAccess" -and $_.IsInherited -eq $false}} | ft {$foo},User,AccessRights