none
exchange2010sp3 powershell 如何获取完全访问权限列表 RRS feed

  • 问题

  • 我使用powershell命令获取某个用户的完全访问权限

    Get-MailboxPermission -Identity testmailbox

    运行这个命令后,可以看到  AccessRights 包含 FullAccess属性的有很多,但是在控制台打开只能看到一个完全访问权限,请问应该如何筛选?

    2019年1月17日 8:14

答案

  • 您好,

    很抱歉回复晚了。

    $_.IsInherited -eq $False是筛选排除继承过来的Full Access权限。

    -not ($_.User -like “NT AUTHORITY\SELF”)是去掉“NT AUTHORITY\SELF”,这项代表用户自己对自己邮箱的权限。

    此致,

    Steve Fan


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.


    2019年2月13日 6:28
    版主

全部回复

  • 您好,

    Full Access权限是默认分配给NT AUTHORITY\SELF的,也就是给你自己访问你自己邮箱的权限。Get-MailboxPermission返回的列表中其他的Full Access权限是NT AUTHORITY\SELF的继承权限,虽然看上去显示这些用户有Full Access权限,但是实际上他们并没有对这个mailbox有Full Access的权限,因为继承的Deny权限覆盖了继承的Allow权限。

    您可以通过以下命令查看具体的情况:

    Get-MailboxPermission <MailboxIdentity> | where {$_.AccessRights -like 'Full*'} | Format-Table -Auto User,Deny,IsInherited,AccessRight

    此致,

    Steve Fan


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.


    2019年1月18日 4:55
    版主
  • 我应该如何用powershell获取完全访问权限的时候剔除   “实际上他们并没有对这个mailbox有Full Access的权限”   这些用户

    让powershell获取的返回值像图二ui列表里返回的一个真实具有权限的用户?

    2019年1月18日 14:32
  • 您好,

    您可以尝试以下命令以获取一个准确的对特定mailbox有Full Access权限的用户列表:

    Get-MailboxPermission <MailboxIdentity>  | Where { ($_.AccessRights -like '*FullAccess*') -and ($_.IsInherited -eq $False) -and -not ($_.User -like “NT AUTHORITY\SELF”) } | Format-Table -Auto User,Deny,IsInherited,AccessRights

    此致,

    Steve Fan


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.


    2019年1月21日 2:24
    版主
  • 您好,

    请问以上方案对你是否有效?

    此致,

    Steve Fan


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.


    2019年1月24日 9:49
    版主
  • 您好,

    请问是否尝试了以上命令?如果还需要我们提供进一步的帮助,请尽管告知我们。如果以上方案对您有所帮助,还烦请将其标记为答案以关闭本贴。感谢您的理解与支持。

    此致,

    Steve Fan


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.


    2019年1月31日 1:51
    版主
  • 感谢答复。

    上面命令得到结果和预期一致

    但是想问一下   
    $_.IsInherited -eq $False 

    $_.User -like “NT AUTHORITY\SELF”

    分别代表什么意义

    2019年2月3日 1:43
  • 感谢答复。

    上面命令得到结果和预期一致

    但是想问一下   
    $_.IsInherited -eq $False 

    $_.User -like “NT AUTHORITY\SELF”

    分别代表什么意义

    2019年2月12日 8:21
  • 您好,

    很抱歉回复晚了。

    $_.IsInherited -eq $False是筛选排除继承过来的Full Access权限。

    -not ($_.User -like “NT AUTHORITY\SELF”)是去掉“NT AUTHORITY\SELF”,这项代表用户自己对自己邮箱的权限。

    此致,

    Steve Fan


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.


    2019年2月13日 6:28
    版主
  • 感谢答复!

    请问是否可以不使用管道符号和$_.IsInherited -eq $False来获取

    是否可以使用-key value的形式获取排除继承过的权限?

    比如-Identity username  这种形式?

    因为我使用的代码获取,并不支持管道等更高级的逻辑操作

    2019年2月13日 10:02
  • 感谢答复!

    请问是否可以不使用管道符号和$_.IsInherited -eq $False来获取

    是否可以使用-key value的形式获取排除继承过的权限?

    比如-Identity username  这种形式?

    因为我使用的代码获取,并不支持管道等更高级的逻辑操作

    2019年2月21日 4:00