[玩转系统] 完全访问权限 |完全访问邮箱权限 – 您一直想知道但又不敢问的一切 2/3 .com
作者:精品下载站 日期:2024-12-14 08:41:15 浏览:14 分类:玩电脑
完全访问权限 |完全访问邮箱权限 – 您一直想知道但又不敢问的一切 2/3 .com
在本文中,我们将回顾使用完全访问邮箱权限的不同场景的示例。例如,向其他用户邮箱上的用户分配完全访问邮箱权限、向所有用户邮箱上的用户分配完全访问邮箱权限(批量模式)、向筛选列表上的用户分配完全访问邮箱权限等等。
完全访问邮箱权限 |系列文章
完全访问邮箱权限文章系列包括以下三篇文章:
- 完全访问邮箱权限 - 第 1/3 部分
- 完全访问邮箱权限 - 第 2/3 部分(本文)
- 完全访问邮箱权限 - 第 3/3 部分
场景 1. 为用户邮箱分配完全访问权限
我们将从使用邮箱权限的最基本场景开始。
在此示例中,我们需要为 Alice 提供对其经理邮箱 (John) 的完全访问权限。
如前所述,建议将 InheritanceType All 参数添加到基本 PowerShell 命令中,以使 Alice 能够访问 John 将来可能创建的新邮件文件夹。
我们不需要添加 AutoMapping 选项,因为 AutoMapping 选项默认是启用的。换句话说,执行以下 PowerShell 命令后,John 的邮箱将自动添加到 Alice Outlook 邮件配置文件中。
Powershell命令语法:
Add-MailboxPermission -Identity <Identity> -User <Identity> -AccessRights FullAccess -InheritanceType All
PowerShell 命令示例:
Add-MailboxPermission -Identity "John" -User "Alice" -AccessRights FullAccess -InheritanceType All
场景 2. 向用户分配所有邮箱的完全访问权限(批量模式)
我们的任务是向所有用户邮箱提供 Alice Full Access 邮箱权限。
在这种情况下,我们应该考虑取消 AutoMapping 的默认选项,因为潜在的假设是 Alice 需要根据具体需求不时访问用户邮箱,但我们不希望自动添加到 Alice Outlook 邮件中配置文件数十或数百个邮箱。
- 在 PowerShell 句子的第一部分中,我们要求 PowerShell 获取所有 Exchange Online 邮箱的列表或集合。第一部分的输出通过管道传输到 PowerShell 命令的第二部分。
- 在第二部分中,我们为 Alice 分配所有邮箱的完全访问邮箱权限(我们从 PowerShell 命令的第一部分获取的邮箱列表)。
- Get-Mailbox -ResultSize unlimited - 当我们使用 Get-Mailbox 命令时,默认的 PowerShell 选项是获取或显示前 1,000 个邮箱。如果您管理的企业组织拥有超过 1,000 个邮箱,我们需要添加以下选项:Get-Mailbox -ResultSize unlimited 以获取所有现有邮箱的列表。
PowerShell 命令示例:
Get-Mailbox -ResultSize unlimited | Add-MailboxPermission -User "Alice" -AccessRights FullAccess -InheritanceType all -AutoMapping $False
场景 3. 将邮箱权限分配给已筛选列表成员邮箱上的用户
在下一节中,我们将回顾一些场景,在这些场景中,我们希望向用户提供对已筛选邮箱列表的完全访问邮箱权限。
场景 3.1 - 向用户分配多个 Exchange 邮箱的完全访问权限 |仅用户邮箱
我们的任务是为 Alice 提供对经过筛选的用户邮箱列表的完全访问邮箱权限。我们只想向 Alice 提供对用户邮箱的完全访问权限。
(在 Exchange 环境中,还有一种附加类型的邮箱,例如房间邮箱、资源邮箱、共享邮箱等)。
- AutoMapping - 附加要求是禁用自动化选项。如前所述,自动映射功能是默认实现的。在我们的场景中,我们不想使用自动映射选项,因为我们希望避免出现 Alice Outlook 邮件配置文件包含数十或数百个邮箱的场景。我们将通过使用参数来实现此要求:-AutoMapping $False
PowerShell 命令示例:
Get-Mailbox -ResultSize unlimited -Filter {(RecipientTypeDetails -eq 'UserMailbox')} | Add-MailboxPermission -User "Alice" -AccessRights FullAccess -InheritanceType all -AutoMapping $False
场景 3.2 - 向用户分配多个 Exchange 邮箱的完全访问权限 |具有特定邮件地址后缀的邮箱
我们的任务是为电子邮件地址中具有特定域后缀的所有邮箱提供 Alice 完全访问邮箱权限。在我们的示例中,我们希望仅向 Alice 提供具有 o365info.com 域名后缀的邮箱的访问权限。
我们使用的 PowerShell 脚本分为三个部分:
- 在这一部分中,我们要求 PowerShell 获取所有现有邮箱的列表。
- 我们使用管道符 (“|”) 来“管道”PowerShell 命令的第一部分和第二部分的结果。然后,我们使用 Filter cmdlet 来过滤或从邮箱列表中“拉出”具有域名后缀的邮箱:o365info.com 的邮箱
- 我们将 Alice 完全访问邮箱权限分配给从 PowerShell 命令的第二部分获得的邮箱列表的筛选列表。
PowerShell命令语法:
Get-Mailbox -ResultSize unlimited -Filter {(Email Addresses -like "*<Mail address suffix>*")} | Add-MailboxPermission -User <Identity> -AccessRights FullAccess -InheritanceType all -AutoMapping $False
PowerShell 命令示例:
Get-Mailbox -ResultSize unlimited -Filter {(Email Addresses -like "*o365info.com*")} | Add-MailboxPermission -User "Alice" -AccessRights FullAccess -InheritanceType all -AutoMapping $False
场景 3.3 - 向用户分配多个 Exchange 邮箱的完全访问权限 |来自特定部门的邮箱用户
我们的任务是为 Seals 部门的用户提供 Alice 邮箱权限。请注意,我们要过滤掉具有特定角色的用户(在销售部门工作的用户),然后为Alice提供对该用户邮箱的完全访问权限。
当我们想要引用诸如部门之类的属性时,我们需要使用“用户对象”,因为诸如部门或经理之类的属性是用户属性而不是邮箱属性。
为了能够获取有关 Exchange Online 环境中用户对象属性的信息,我们需要使用 Get-User cmdlet。 Get-User cmdlet 使我们能够引用具有邮箱的 Office 365 用户。
PowerShell命令语法:
Get-User -Filter {(Department -eq "<Department>")} | Add-MailboxPermission -User <Identity> -AccessRights FullAccess -InheritanceType all -AutoMapping $False
PowerShell 命令示例:
Get-User -Filter {(Department -eq "Sales")} | Add-MailboxPermission -User "Alice" -AccessRights FullAccess -InheritanceType all -AutoMapping $False
场景 3.4 - 向用户分配多个 Exchange 邮箱的完全访问权限 |在 X 部门或 Y 部门工作的用户
我们的任务是为销售部门的用户和营销部门的用户提供 Alice 完全访问邮箱权限。为了能够引用来自两个不同部门的用户,我们将使用逻辑运算符“OR”。
PowerShell命令语法:
Get-User -Filter {(Department -eq "<Department>") -or (Department -eq "<Department>")} | Add-MailboxPermission -User <Identity> -AccessRights FullAccess -InheritanceType all -AutoMapping $False
PowerShell 命令示例:
Get-User -Filter {(Department -eq "Sales") -or (Department -eq "Marketing")} | Add-MailboxPermission -User "Alice" -AccessRights FullAccess -InheritanceType all -AutoMapping $False
场景 3.5 - 向用户分配多个 Exchange 邮箱的完全访问权限 |使用逻辑运算符的组合
我们的任务是为 Alice 提供完全访问邮箱权限:
- 在销售部门工作的所有经理。
- 在营销部门工作的所有经理。
为了能够实现所需的条件,我们将使用逻辑运算符“OR”和附加逻辑运算符“AND”。
PowerShell命令语法:
Get-User -Filter {(Department -eq "<Department>") -or (Department -eq "<Department>")-and (Title -eq "<Title>")} | Add-MailboxPermission -User <Identity> -AccessRights FullAccess -InheritanceType all -AutoMapping $False
PowerShell 命令示例:
Get-User -Filter {(Department -eq "Sales") -or (Department -eq "Marketing")-and (Title -eq "Manger")} | Add-MailboxPermission -User "Alice" -AccessRights FullAccess -InheritanceType all -AutoMapping $False
场景 3.6 - 向用户分配多个 Exchange 邮箱的完全访问权限 |使用过滤选项排除用户列表
为了完成这个任务,我们需要使用更复杂的PowerShell脚本:
- 获取具有全局管理员角色的所有用户的列表。
- 提取配置为全局管理员的每个用户的电子邮件地址。
- 为 Alice 分配所有邮箱的完全访问邮箱权限,但我们从列表中排除或过滤掉“属于”具有全局管理员角色的用户的所有邮箱。
PowerShell 命令示例:
# Get role Members, extract their Email address property
$role = Get-MsolRole -RoleName 'Company Administrator'
$roleMember = Get-MsolRoleMember -RoleObjectId $role.ObjectId | Select-Object -ExpandProperty EmailAddress
# Get all users mailboxes except Members of the 'Company Administrator' role
Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox |
Where { $roleMember -notcontains $_.WindowsEmailAddress } |
Add-MailboxPermission -User Alice -AccessRights FullAccess -InheritanceType All -AutoMapping $False
场景 4. 将完全访问邮箱权限分配给安全组(Mail Enabled Security group)
使用安全组分配邮箱权限是权限分配和管理任务的最佳实践。
使用安全组使我们能够享受到安全组的“动态性”。当我们使用向个人用户分配权限的选项时,权限的管理变得复杂,因为很难记录和跟踪有关哪些用户对其他用户的邮箱具有明确权限的信息。
使用安全组,使我们能够简化和优化邮箱权限的分配和管理。例如,我们可以创建一个安全组,将用户添加到安全组,然后将权限分配给安全组,而不是为特定邮箱的六个用户提供权限。
如果我们需要允许其他用户访问特定用户邮箱,我们只需将这些用户添加到安全组即可。 “新用户”将自动继承分配给安全组的权限。
当我们需要删除或删除特定用户的邮箱权限时,同样的逻辑也适用。
您可以在文章使用组有效管理 Exchange Online 中的权限中阅读有关向安全组分配权限的概念和优点的更多详细信息。
我想提一下的其他事情是:
- 自动映射
当我们向安全组分配邮箱权限时,不会为每个组成员激活自动映射功能。原因很简单,当我们将邮箱权限分配给安全组时,该权限是直接分配给该组的,而不是分配给组成员的。
- 显示有关权限的信息
当我们使用PowerShell显示有关“谁拥有特定邮箱的权限”的信息时,如果我们将权限分配给安全组,则显示的结果将与名称相关安全组的名称,而不是每个安全组成员的名称。换句话说,当我们显示邮箱权限时,我们无法获取有关属于安全组成员的特定用户的信息。
场景 4.1 - 将邮箱权限分配给安全组(邮件启用安全组) - 在另一个用户邮箱上
在以下示例中,我们向名为:NY-HelpDesk 的安全组提供完全访问邮箱权限。
注意: 用于分配邮箱使用权限或安全组的 PowerShell 命令语法是相同的。当我们向安全组分配权限时,我们不需要您使用任何特殊参数。
PowerShell命令语法:
Add-MailboxPermission <Identity> -User <Identity> -AccessRights FullAccess -InheritanceType All
PowerShell 命令示例:
Add-MailboxPermission "John" -User "NY-HelpDesk" -AccessRights FullAccess -InheritanceType All
场景 4.2 - 向已过滤的邮箱列表上的安全组(启用邮件的安全组)分配权限
另一个示例,可能是我们希望为所有用户邮箱提供安全组完全访问邮箱权限的场景。
例如,我们希望将所有用户邮箱的完全访问邮箱权限分配给名为“NY-HelpDesk”的安全组。
如前所述,当我们向安全组提供邮箱权限时,与我们向用户提供邮箱权限的场景相比,我们应该使用的标准 PowerShell 语法没有变化。
我们需要做的就是在-User参数后面使用安全组(启用邮件的安全组)的名称。
PowerShell命令语法:
Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox | Add-MailboxPermission -User <Identity> -AccessRights FullAccess -InheritanceType All
PowerShell 命令示例:
Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox | Add-MailboxPermission -User "NY-HelpDesk" -AccessRights FullAccess -InheritanceType All
场景 4.3 - 使用 AutoMap 选项为用户邮箱上的安全组(启用邮件的安全组)分配权限
为安全组分配邮箱权限与为特定用户分配权限之间的主要区别之一是,未来的 AutoMap 不会为每个安全组成员实现,因为权限分配是通过引用“组对象”而不是安全组成员。
为了使场景变得更复杂一些,我们将添加额外的需求:我们希望为安全组的每个成员“激活”AutoMap 功能。
为了能够完成此任务,我们将使用一个小技巧,不是直接向安全组分配权限,而是首先提取组成员列表(每个组成员的名称列表),然后,我们将使用 ForEach PowerShell cmdlet 为每个组成员提供所需的邮箱权限。
PowerShell命令语法:
$Members = Get-DistributionGroupMember -id <Identity>
ForEach ($Member in $Members) {
Add-MailboxPermission <Identity> -user $Member.name -AccessRights FullAccess
-InheritanceType All -AutoMapping $True
}
PowerShell 命令示例:
$Members = Get-DistributionGroupMember -id "NY-HelpDesk"
ForEach ($Member in $Members) {
Add-MailboxPermission "John" -user $Member.name -AccessRights FullAccess
-InheritanceType All -AutoMapping $True
}
场景 5. 向用户邮箱上的通讯组分配权限
默认情况下,我们无法向通讯组分配许可证,因为通讯组不是“安全对象”。分发组通过向一组收件人发送邮件来“收集”论文的收件人。
如果我们尝试将完全访问邮箱权限分配给通讯组,PowerShell 控制台将显示以下错误:
“未找到用户或组“”。请确保您输入正确。 ”
PowerShell 控制台错误不清楚,因为该消息表示特定组不存在。此消息不太正确,因为组 存在 ,但由于该组是分发组,因此没有为该组分配邮箱权限的选项。
因此,现在明显的问题可能是:“为什么我在本节中使用“向用户邮箱上的分发组分配邮箱权限”的标题? ”
答案是我们可以使用一些小技巧或解决方法来完成这项任务。
我们使用的技巧是首先使用 PowerShell 命令提取每个分发组成员,然后在下一步中,我们将为每个组成员分别分配所需的邮箱权限。
邮箱权限的分配对于每个组成员是通过使用 PowerShell cmdlet ForEach 实现的。
在第一部分中,我们定义一个名为 $Members 的变量,它将用作包含通讯组的所有成员(用户)的“容器”或数组:“NY-HelpDesk”
$Members 变量的内容是使用 PowerShell cmdlet Get-DistributionGroupMember 填充的。
下一部分将基于 ForEach cmdlet。在 ForEach cmdlet 的括号中,我们告诉 ForEach cmdlet 对 $Members 数组中包含的每个项目“执行某些操作”。
当我们每次运行邮箱权限命令时(特定用户),我们使用一个名为:$Member 的附加变量,该变量将代表单个实体。变量的名称只是我选择的名称。我们可以选择任何我们想要的名字。
使用大括号定义的部分包括我们要执行的 PowerShell 命令。在我们的示例中,我们使用 Add-MailboxPermission。
请注意,与 Add-MailboxPermission 命令的标准语法相比,我们没有指定将获得 John 邮箱的完全访问邮箱权限的用户名,而是使用带有属性名称 ($Member.name) 的 $Member 变量。
原因是使用 ForEach 选项时,Add-MailboxPermission 命令将为每个组成员一遍又一遍地运行,直到列表中的最后一个成员。
在最后一部分中,我们使用 -AutoMapping 选项,其值为 $True。这是因为我们要为每个组成员启用 -AutoMapping 选项。
PowerShell命令语法:
$Members = Get-DistributionGroupMember -id <Identity>
ForEach ($Member in $Members) {
Add-MailboxPermission <Identity> -user $Member.name -AccessRights FullAccess -InheritanceType All -AutoMapping $True
}
PowerShell 命令示例:
$Members = Get-DistributionGroupMember -id "NY-HelpDesk"
ForEach ($Member in $Members) {
Add-MailboxPermission "John" -user $Member.name -AccessRights FullAccess -InheritanceType All -AutoMapping $True
}
场景 6. 向通讯组分配对已筛选邮箱列表的权限
在此示例中,我们希望向通讯组中的成员提供对所有现有邮箱的完全访问邮箱权限。
由于我们无法将完全访问邮箱权限直接分配给通讯组,因此我们将使用两个“ForEach”数组。
- 引用组成员 - 为了能够引用每个组成员,我们将创建一个名为 $Members 的变量,它将用作包含安全组的所有成员(用户)的“容器”或数组:“NY -帮助台”
- 引用 Exchange Online 邮箱 - 为了能够引用所有用户邮箱,我们将创建名为 $Mailboxes 的附加变量,该变量将充当所有用户邮箱的“容器”。
- 下一节包含两个 ForEach 语句的组合。第一个 ForEach 部分为每个邮箱单独运行命令。
- 下一个 ForEach 部分(嵌套 ForEach)将为每个组成员运行该命令。
- 描述想要共享其邮箱的用户(为其邮箱提供完全访问权限)的部分由变量 $Mailbox.name 表示
- 描述有权访问用户邮箱的用户的部分(由变量 $Member.name 表示。
PowerShell命令语法:
$Members = Get-DistributionGroupMember -id <Identity>
$Mailboxes = Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox
ForEach ($mailbox in $Mailboxes) {
ForEach ($member in $Members) {
Add-MailboxPermission $mailbox.name -AccessRights FullAccess -user $Member.name
}
}
PowerShell 命令示例:
$Members = Get-DistributionGroupMember -id "NY-HelpDesk"
$Mailboxes = Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox
ForEach ($mailbox in $Mailboxes) {
ForEach ($member in $Members) {
Add-MailboxPermission $mailbox.name -AccessRights FullAccess -user $Member.name
}
}
场景 7. 为文件中的用户列表中的用户分配权限
在本节中,我们涉及一个场景,在该场景中,我们希望向用户提供对其他用户(收件人)集合的权限。与之前情况不同的是,用户的“集合”位于文件中。
使用文件时的一般概念
到目前为止,我们习惯于使用 Get PowerShell cmdlet 创建用户或邮箱列表。我们可以将这种方法描述为“动态”,因为我们通过查询创建的列表是在默认情况下使用 Get-Mailbox 等命令时创建的,并且输出存储在桌面内存中。对比。通过这种方法,我们可以使用的另一个选项是将信息存储在文件中。
我们可以将此方法描述为“静态”,因为文件内容包含静态信息。使用文件作为信息源有几个优点,因为当信息存储在文件中时,我们可以使用 Excel 等应用程序轻松编辑数据。
大多数时候,最佳实践是使用名为:CSV(逗号分隔值)的文件格式。
从技术上讲,CSV 文件的内容基于简单的文本格式,但不同之处在于,CSV 格式使我们能够模仿或模拟包含列、列标题和行的数据表的结构。
在下一节中,我们将回顾一些使用文件作为“信息源”来提供邮箱权限的示例。
场景 7.1 - 分配对用户邮箱上的列表(从文件)的完全访问权限
在以下场景中,我们希望提供用户列表,对 John 的邮箱具有完全访问邮箱权限。与之前场景的不同之处在于,用户列表包含在我们已经提前准备好的文件中。
在下一个屏幕截图中,我们可以看到文件结构的示例。正如您所看到的,结构非常简单。我们需要使用 CSV 文件,因为 CSV 格式使我们能够通过使用简单的 TXT 文件来“模仿”表结构。
我们使用的“表”包含一个名为用户的行标题。名称“Users”只是一个示例。您可以选择适合您需要的所有其他名称(避免选择包含空格的标头名称)。
要从 CSV 文件导入列表内容,我们将使用 PowerShell cmdlet Import-Csv 并提供路径和文件名。在我们的示例中,文件名是:User.csv,文件位置是:C:\Temp
在“导入”步骤之后,我们将使用 ForEach PowerShell cmdlet,分别为每个用户分配所需的权限。
我们可以将 CSV 文件中的用户列表定义为数组。为了使 PowerShell 能够与每个用户(数组中的成员/项目)相关,我们使用 $_。符号。 $_.字符包含当前管道对象,用于脚本块、过滤器和 where 语句。
在我们的示例中,用户列的列标题名为“users”(您可以选择适合您需要的任何其他名称)。
如果您查看 PowerShell 命令语法,您会注意到我们没有使用特定的用户名,而是使用 $_.users;
这意味着 ForEach PowerShell cmdlet 将查看名为“users”的表列,并为表列下显示的每个用户运行邮箱权限命令。
$_.users 字符充当用户名值的“空格持有者”,每次都会替换为不同的用户名,直到列表末尾。
PowerShell 命令示例:
Import-Csv "C:\Temp\User.csv" | ForEach { Add-MailboxPermission "John" -User $_.users -AccessRights FullAccess -InheritanceType all }
场景 7.2 - 将完全访问权限分配给用户列表上的用户(来自文件)
在这种情况下,我们希望为用户(在我们的示例中为 John)提供对用户邮箱列表的完全访问邮箱权限。指定用户的列表保存在文件中。
PowerShell 命令示例:
$Mailboxes = Import-Csv "C:\Temp\User.csv"
ForEach ($Mailbox in $Mailboxes) {
Add-MailboxPermission $Mailbox.users -User "John" -AccessRight FullAccess -InheritanceType All
}
使用 TXT 文件
此场景与之前的场景(场景 7.2)相同。不同之处在于,在这种情况下,我们将从 TXT 文件而不是 CSV 文件导入所需的信息。
在下面的屏幕截图中,我们可以看到 TXT 文件的内容\结构的示例。
我们使用的 PowerShell 语法有点不同。当我们想要从 TXT 文件中读取数据时,我们使用 PowerShell cmdlet Get-Content。
PowerShell 命令示例:
Get-Content "C:\Temp\User.txt" | ForEach { Add-MailboxPermission "Alice" -User $_ -AccessRights FullAccess -InheritanceType all }
场景 7.3 - 将邮箱权限分配给另一个用户列表列表上的用户列表(来自文件)
在下一个示例中,我们使用更高级的选项。 CSV 文件包含两列。
第一列(名为 List1)包含一个用户列表,我们希望向这些用户提供对第二列(List2)中列出的用户的完全访问权限。
例如,用户 Jeff 将获得 John 邮箱的完全访问权限。
PowerShell 命令示例:
Import-Csv "C:\Temp\User.csv" | ForEach { Add-MailboxPermission $_.List1 -User $_. List2 -AccessRights FullAccess -InheritanceType all }
场景 8. 将完全访问邮箱权限分配给用户邮箱上的筛选列表成员
在以下场景中,我们希望向用户邮箱的筛选用户列表提供邮箱权限(多对一关系)。
例如,我们希望向其头衔为 John 邮箱的所有用户提供完全访问邮箱权限 - 经理。
- 为了能够获取其头衔为:经理的用户列表,我们需要使用 PowerShell cmdlet Get-User。如前所述,Title属性是一个 User 对象属性,而不是邮箱属性(邮箱不能是管理员,但用户可以是管理员)。
- 在 PowerShell 脚本的第一部分中,我们创建一个名为 $Members 的变量,该变量将存储或包含标题为经理的用户列表。
- 我们使用 Filter cmdlet 仅过滤掉(获取过滤列表)符合条件 Title=manager 的用户。
- 在下一节中,我们将使用 ForEach cmdlet,它使我们能够循环遍历集合中的每个项目(标题为:经理的所有用户)并对其执行操作。
- 在最后一部分中,我们将完全访问邮箱权限分配给用户(在我们的示例中为 John)邮箱的每个成员。为了能够引用每个管理员邮箱,我们创建一个名为 Member 的变量并添加标识符名称以获取邮箱的名称。
PowerShell命令语法:
$Members = Get-User -ResultSize unlimited -Filter { (RecipientType -eq 'UserMailbox') -and (Title -like '*<Title>*') }
ForEach ($Member in $Members) {
Add-MailboxPermission <Identity> -AccessRights FullAccess -user $Member.name -InheritanceType all
}
PowerShell 命令示例:
$Members = Get-User -ResultSize unlimited -Filter { (RecipientType -eq 'UserMailbox') -and (Title -like '*manager*') }
ForEach ($Member in $Members) {
Add-MailboxPermission "John" -AccessRights FullAccess -user $Member.name -InheritanceType all
}
场景 9. 将完全访问邮箱权限分配给其他组成员的安全组(启用邮件的安全组)
从技术上讲,我们无法将安全组的许可直接提供给另一个组(安全组或分发组)。
在以下场景中,我们将使用以下技巧:将组成员(安全组或分发组)提取为单独用户,然后向安全组提供每个单独组成员所需的权限。
在我们的示例中,我们将为名为 DL-01 的分发组的每个组成员分配名为 SEC-01 的安全组的完全访问权限。
- 在 PowerShell 脚本的第一部分中,我们创建一个名为 $Member 的变量,它将存储或包含目标组的成员。 PowerShell cmdlet Get-DistributionGroupMember 用于获取通讯组以及启用邮件的安全组。
- 在下一节中,我们将使用 ForEach cmdlet,它使我们能够循环遍历集合中的每个项目(DL-01 分发组中的所有成员)并对其执行操作
- 在最后一部分中,我们将完全访问邮箱权限分配给名为:Sec-01 的已启用邮件的安全组。为了能够单独引用 DL-01 分发组中的每个成员,我们使用名为 $Member 的变量并添加属性名称来获取邮箱的名称(每个用户的身份) )。
PowerShell命令语法:
$Members = Get-DistributionGroupMember -id "<Identity>"
ForEach ($Member in $Members) {
Add-MailboxPermission $Member.name -AccessRights FullAccess -user "" -InheritanceType all
}
PowerShell 命令示例:
$Members = Get-DistributionGroupMember -id "DL-01"
ForEach ($Member in $Members) {
Add-MailboxPermission $Member.name -AccessRights FullAccess -user "SEC-01" -InheritanceType all
}
场景 10. 将完全访问邮箱权限分配给其他组成员邮箱上的组,反之亦然
下面的场景看起来有点混乱。不过,不要害怕!业务需求:我们有两个分销组:经理分销组和助理分销组。每个经理都需要对每个助理邮箱具有完全访问邮箱权限,反之亦然:每个助理都需要对每个经理邮箱具有完全访问邮箱权限。
- 经理的组名称是:Manager-DL
- 助理的组名称是:Assistant-DL
PowerShell 命令示例:
$GroupA = Get-DistributionGroupMember -Identity "Manager-DL"
$GroupB = Get-DistributionGroupMember -Identity "Assistant-DL"
# Iterate over the Members of each group
# Give each member of groupA full mailbox permissions to all Members of groupB
ForEach ($MemberA in $GroupA) {
ForEach ($MemberB in $GroupB) {
Add-MailboxPermission -Identity $MemberB.Identity -User $memberA.Identity -AccessRights FullAccess -AutoMapping:$False -InheritanceType All
Add-MailboxPermission -Identity $memberA.Identity -User $memberB.Identity -AccessRights FullAccess -AutoMapping:$False -InheritanceType All
}
}
就是这样!
在下一篇文章中,我们将研究完全访问邮箱权限 - 您一直想知道但不敢问的一切,第 3/3 部分。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag