Test-ClientAccessRule
注意
从 2022 年 10 月开始,所有未使用客户端访问规则的 Exchange Online 组织都弃用了客户端访问规则。 客户端访问规则将于 2025 年 9 月 1 日弃用所有剩余组织。 如果选择在截止时间之前关闭客户端访问规则,将在组织中禁用此功能。 有关详细信息,请参阅在 Exchange Online 中弃用客户端访问规则的更新。
此 cmdlet 仅在 2019 Exchange Server 和基于云的服务中有效。 一些参数和设置可能只适用于某个特定的环境。
使用 Test-ClientAccessRule cmdlet 测试客户端访问规则如何影响对组织的访问。 如果您为此 cmdlet 指定的任何客户端属性匹配任何客户端访问规则,这些规则将在结果中返回。
有关以下语法部分的参数设置的详细信息,请参阅 Exchange cmdlet 语法。
语法
Test-ClientAccessRule
-AuthenticationType <ClientAccessAuthenticationMethod>
-Protocol <ClientAccessProtocol>
-RemoteAddress <IPAddress>
-RemotePort <Int32>
-User <MailboxIdParameter>
[-Confirm]
[-OAuthClaims <Hashtable>]
[-WhatIf]
[<CommonParameters>]
说明
客户端访问规则类似于邮件流规则 (也称为) 与组织的客户端连接的传输规则。 使用条件和异常根据连接的属性以及允许或阻止连接的操作来标识连接。
注意:目前,并非所有协议都支持所有身份验证类型。 此列表描述了每个协议支持的身份验证类型:
- OutlookWebApp:BasicAuthentication 和 AdfsAuthentication。
- ExchangeAdminCenter:BasicAuthentication 和 AdfsAuthentication。
- RemotePowerShell:BasicAuthentication 和 NonBasicAuthentication。
- ExchangeActiveSync:BasicAuthentication、OAuthAuthentication 和 CertificateBasedAuthentication。
您必须先获得权限,然后才能运行此 cmdlet。 虽然本主题中列出了此 cmdlet 的所有参数,但如果这些参数并未包含在分配给您的权限中,那么您将无法使用这些参数。 若要查找在贵组织中运行任何 cmdlet 或参数所需的权限,请参阅 Find the permissions required to run any Exchange cmdlet。
示例
示例 1
Test-ClientAccessRule -AuthenticationType BasicAuthentication -Protocol OutlookWebApp -RemoteAddress 172.17.17.26 -RemotePort 443 -User julia@contoso.com
本示例使用下列客户端属性测试客户端访问:
- 身份验证类型:基本
- Protocol:OutlookWebApp
- 远程地址:172.17.17.26
- 远程端口:443
- 用户: julia@contoso.com
参数
-AuthenticationType
AuthenticationType 参数指定要测试的客户端身份验证类型。
PasswordQuality 参数指定设备密码所需的最小密码质量分级。密码质量是指示密码安全性和复杂性的数值。质量值越高表示密码越安全。
- AdfsAuthentication
- BasicAuthentication
- CertificateBasedAuthentication
- NonBasicAuthentication
- OAuthAuthentication
在客户端访问规则钟,身份验证类型由 AnyOfAuthenticationTypes 和 ExceptAnyOfAuthenticationTypes 参数定义。
类型: | ClientAccessAuthenticationMethod |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
适用于: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-Confirm
Confirm 开关指定是否显示确认提示。 此开关对 cmdlet 造成的影响取决于在你继续操作之前 cmdlet 是否需要确认。
- 破坏性 cmdlet(例如 Remove-* cmdlets)内置有暂停,可强制要求先确认命令,然后再继续操作。 对于这些 cmdlet,您可以使用此确切语法跳过确认提示:
-Confirm:$false
。 - 其他大多数 cmdlet(例如 New-* 和 Set-* cmdlet)都没有内置暂停。 对于这些 cmdlet,指定不含值的 Confirm 开关会引入暂停,从而强制要求你先确认命令,然后再继续操作。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
适用于: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-OAuthClaims
OAuthClaims 参数指定中间层应用的 OAuth 声明令牌。
类型: | Hashtable |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
适用于: | Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-Protocol
Protocol 参数指定要测试的客户端协议。
PasswordQuality 参数指定设备密码所需的最小密码质量分级。密码质量是指示密码安全性和复杂性的数值。质量值越高表示密码越安全。
- ExchangeActiveSync
- ExchangeAdminCenter
- ExchangeWebServices
- IMAP4
- OfflineAddressBook
- OutlookAnywhere
- OutlookWebApp
- POP3
- PowerShellWebServices
- RemotePowerShell
- REST
在客户端访问规则钟,协议类型由 AnyOfProtocols 和 ExceptAnyOfProtocols 参数定义。
类型: | ClientAccessProtocol |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
适用于: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-RemoteAddress
RemoteAddress 参数指定要测试的客户端 IP 地址。 此参数的有效输入值为 IP 地址。 例如,192.168.1.50。
在客户端访问规则钟,IP 地址由 AnyOfClientIPAddressesOrRanges 和 ExceptAnyOfClientIPAddressesOrRanges 参数定义。
类型: | IPAddress |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
适用于: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-RemotePort
RemotePort 参数指定要测试的客户端 TCP 端口。 此参数的有效输入是从 1 到 65535 的整数。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
适用于: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-User
User 参数指定要测试的用户帐户。
为了获得最佳结果,我们建议使用以下值:
- UPN:例如,
user@contoso.com
(用户仅) 。 - Domain\SamAccountName:例如
contoso\user
。
否则,可以使用唯一标识用户的任何值。 例如:
- 名称
- 别名
- 可分辨名称 (DN)
- 可分辨名称 (DN)
- 域\用户名
- 电子邮件地址
- GUID
- LegacyExchangeDN
- SamAccountName
- 用户 ID 或用户主体名称 (UPN)
在客户端访问规则中,用户由 UsernameMatchesAnyOfPatterns、UserRecipientFilter 和 ExceptUsernameMatchesAnyOfPatterns 参数定义。
类型: | MailboxIdParameter |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
适用于: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-WhatIf
WhatIf 开关模拟命令操作。 可以使用此开关在不实际应用将会发生的更改的情况下预览这些更改。 不必为此开关指定值。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
适用于: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |