New-CsClientVersionPolicyRule

 

上一次修改主题: 2012-03-23

创建一个新的客户端版本策略规则。客户端版本策略规则可帮助确定用户能否使用特定的客户端应用程序登录 Microsoft Lync Server 2010。

语法

New-CsClientVersionPolicyRule -Identity <XdsIdentity> [-Action <Allow | AllowAndUpgrade | AllowWithUrl | Block | BlockAndUpgrade | BlockWithUrl>] [-ActionUrl <String>] [-BuildNumber <Nullable>] [-CompareOp <EQL | NEQ | GTR | GEQ | LSS | LEQ>] [-Confirm [<SwitchParameter>]] [-Description <String>] [-Enabled <$true | $false>] [-Force <SwitchParameter>] [-InMemory <SwitchParameter>] [-MajorVersion <UInt16>] [-MinorVersion <Nullable>] [-Priority <Int32>] [-QfeNumber <Nullable>] [-UserAgent <String>] [-UserAgentFullName <String>] [-WhatIf [<SwitchParameter>]]

New-CsClientVersionPolicyRule -Parent <String> -RuleId <String> [-Action <Allow | AllowAndUpgrade | AllowWithUrl | Block | BlockAndUpgrade | BlockWithUrl>] [-ActionUrl <String>] [-BuildNumber <Nullable>] [-CompareOp <EQL | NEQ | GTR | GEQ | LSS | LEQ>] [-Confirm [<SwitchParameter>]] [-Description <String>] [-Enabled <$true | $false>] [-Force <SwitchParameter>] [-InMemory <SwitchParameter>] [-MajorVersion <UInt16>] [-MinorVersion <Nullable>] [-Priority <Int32>] [-QfeNumber <Nullable>] [-UserAgent <String>] [-UserAgentFullName <String>] [-WhatIf [<SwitchParameter>]]

详细说明

客户端版本策略规则用于确定允许哪些客户端应用程序登录 Lync Server 2010。用户尝试登录到 Lync Server 2010 时,其客户端应用程序会向该服务器发送 SIP 标头,此标头包括有关应用程序自身的详细信息(包括软件的主版本号、次版本号和内部版本号)。然后对照客户端版本规则的集合检查版本信息,以确定是否存在适用于该特定应用程序的规则。例如,假设一个用户尝试使用 Microsoft Office Communicator 2007 R2 进行登录。在该用户可登录到 Lync Server 2010 之前,系统会进行检查以确认是否存在适用于 Office Communicator 2007 R2 的客户端版本规则。如果存在此类规则,则 Lync Server 2010 将执行该规则指定的操作。必须为以下操作之一:

Allow。允许用户登录。

AllowAndUpgrade。允许用户登录,并且其 Communicator 2007 R2 副本将自动升级至最新版本的 Lync。是使用 Microsoft Update 还是 Windows Server Update Services 执行升级,具体取决于系统的配置方式。

AllowWithUrl。允许用户登录,并显示消息,将用户指向可下载和安装最新版本 Lync 的 URL。该 URL 必须指向您自己创建的网站,安装 Lync Server 时不会为您创建此类网站。

Block。不允许用户登录。

BlockAndUpgrade。不允许用户登录,但其 Communicator 2007 R2 副本将自动升级至最新版本的 Lync。然后,用户可以尝试使用新的客户端应用程序进行登录。是使用 Microsoft Update 还是 Windows Server Update Services 执行升级,具体取决于系统的配置方式。

BlockWithUrl。不允许用户登录,但会显示消息,将用户指向可下载和安装最新版本 Lync 的 URL。该 URL 必须指向您自己创建的网站,安装 Lync Server 时不会为您创建此类网站。

在客户端版本策略(可在 global 作用域、site 作用域、service 作用域(Registrar 服务)或每用户作用域配置的策略)中收集客户端版本策略规则。使用 New-CsClientVersionPolicyRule cmdlet 创建新的客户端版本规则。创建新规则时,还必须指定此规则的 Identity,此 Identity 包含一个作用域(例如 site:Redmond)和一个全局唯一标识符 (GUID)。您可以自定义 Identity,或提供作用域(Parent 参数)和 GUID(RuleId 参数)以使用 New-CsClientVerisonPolicyRule 创建 Identity。

务必注意,客户端版本策略不适用于联盟用户,联盟用户应遵守其组织中使用的客户端版本策略。例如,假设一个联盟用户使用客户端 A(即联盟组织允许使用的客户端)。只要联盟组织允许使用客户端 A,该用户即可使用该客户端与您的组织通信。即使您的客户端版本策略阻止使用客户端 A 也是如此。您组织中强制执行的客户端版本策略并不会覆盖联盟组织中使用的客户端版本策略。

谁能运行此 cmdlet:默认情况下,以下各组的成员有权在本地运行 New-CsClientVersionPolicyRule cmdlet:RTCUniversalServerAdmins。要返回分配了此 cmdlet 的所有基于角色的访问控制 (RBAC) 角色列表(包括您自己创建的任何自定义 RBAC 角色),请从 Windows PowerShell 提示符处运行以下命令:

Get-CsAdminRole | Where-Object {$_.Cmdlets –match "New-CsClientVersionPolicyRule"}

参数

参数 必需 类型 描述

Identity

必需

Xds 标识

要创建的客户端版本策略规则的唯一标识符。客户端版本策略规则的 Identity 由配置该规则的作用域和一个全局唯一标识符 (GUID) 组成。这意味着规则的 Identity 类似如下:site:Redmond/1987d3c2-4544-489d-bbe3-59f79f530a83.

除了使用 Identity 参数之外,还可以使用 Parent 和 RuleId 参数来通过 New-CsClientVerisonPolicyRule 创建 Identity。

MajorVersion

必需

整数

软件的主版本。例如,如果您的 Communicator 副本为 2.0.6362.111 版,则 MajorVersion 为 2。主版本相当于软件的主要发行版。每次创建新规则时,必须为 MajorVersion 属性指定值。

MinorVersion

可选

整数

软件的次版本。例如,如果您的 Communicator 副本为 2.0.6362.111 版,则 MinorVersion 为 0。次版本相当于软件的临时发行版。

UserAgent

必需

字符串

用于标识软件客户端的指示符。例如,OC 是 Communicator 的用户代理标识。

Action

可选

PS 列表修饰符

触发该规则时(即有人尝试使用指定软件进行登录时)所要采取的操作。有效值是:

Allow。允许用户登录。

AllowWithUrl。允许用户登录,并显示消息,将用户指向可下载和安装最新版本 Lync 的 URL。

AllowAndUpgrade。允许用户登录,并且其 Communicator 副本将自动升级至最新版本的 Lync。

Block。不允许用户登录。

BlockWithUrl。不允许用户登录,但会显示消息,将用户指向可下载和安装最新版本 Lync 的 URL。

BlockAndUpgrade。不允许用户登录,但其 Communicator 副本将自动升级至最新版本的 Lync。然后,用户可以尝试使用新的客户端应用程序进行登录。

ActionUrl

可选

字符串

用户可以下载最新版本 Lync 的 URL。如果 Action 设置为 BlockWithUrl 或 AllowWithUrl,则需要此属性。

BuildNumber

可选

整数

软件的内部版本号。例如,如果您的 Communicator 副本是 2.0.6362.111 版,则 BuildNumber 为 6362。内部版本号代表开发过程中软件的内部版本,可帮助确保您使用的是最终发行版,而不是预发行版本。

CompareOp

可选

PS 列表修饰符

比较运算符用于确定尝试登录的客户端软件是于该规则所指定版本发行之前、之后还是同时发行。有效值是:

EQL(等于)

NEQ(不等于)

GTR(大于)

GEQ(大于或等于)

LSS(小于)

LEQ(小于或等于)

Description

可选

字符串

使管理员可以提供有关客户端版本规则的其他信息。例如,Description 中可能包含在您认为需更改规则时应与其联系的联系人的信息。

Enabled

可选

布尔值

指示是否使用客户端版本规则。如果 Enabled 属性设置为 False ($False),则在用户尝试使用指定软件进行登录时将忽略该规则。默认值为 True。

Parent

可选

字符串

新规则的作用域信息。要使用 Parent 参数并为全局策略创建新规则,请使用以下语法:-Parent global。要为站点策略创建新规则,请使用类似如下的语法:-Parent "site:Redmond"。要为服务策略创建新规则,请使用类似如下的语法:-parent "Registrar:atl-cs-001.litwareinc.com"。要为每用户策略创建新规则,请使用类似如下的语法:-Parent "RedmondClientVersionPolicy"。

在创建新规则时,必须使用 Identity 参数,或同时使用 Parent 参数和 RuleId 参数。

Priority

可选

整数

规则的相对优先级。按优先级顺序处理规则,首先处理优先级为 0 的规则,然后处理优先级为 1 的规则,依此类推。如果分配了一个正在使用的优先级,则新规则将使用该优先级,并相应地对其他规则进行重新编号。

QfeNumber

可选

整数

软件的快速修补工程编号。例如,如果您的 Communicator 副本的版本为 2.0.6362.111,则 QfeNumber 为 111。QFE 编号表示软件正式发行之后提供的计划内应用程序更新。

RuleId

可选

Guid

规则的全局唯一标识符 (GUID)。在 Windows PowerShell 中,可以使用以下命令创建 GUID:

$x = [guid]::NewGuid()

UserAgentFullName

可选

字符串

使管理员能够提供用户代理的友好名称。例如,管理员无需依赖用户代理 UCCP 来标识代理,而是可以完整地写出名称:Microsoft 统一通信客户端。

Force

可选

开关参数

禁止显示运行此命令时可能出现的任何非严重错误消息。

InMemory

可选

开关参数

创建对象引用,但并不作为永久性更改实际提交对象。如果将使用此参数调用的 cmdlet 的输出分配给一个变量,您可以更改对象引用的属性,然后通过调用与此 cmdlet 匹配的 Set- cmdlet 提交这些更改。

WhatIf

可选

开关参数

描述如果执行命令会发生什么情况(无需实际执行命令)。

Confirm

可选

开关参数

在执行命令之前提示您进行确认。

输入类型

无。New-CsClientVersionPolicyRule 不接受通过管道传递的输入。

返回类型

New-CsClientVersionPolicyRule 创建 Microsoft.Rtc.Management.WritableConfig.Policy.ClientVersion.Rule 对象的新实例。

示例

-------------------------- 示例 1 --------------------------

$x = [guid]::NewGuid()

New-CsClientVersionPolicyRule -Parent "site:Redmond" -RuleId $x -MajorVersion 4 -UserAgent InHouse

示例 1 说明了如何创建一个新的客户端版本策略规则。策略规则的 Identitiy 由两部分组成:分配通知的作用域和一个由 36 个字符构成的 GUID。为新的客户端版本策略规则创建 Identity 时,首先需要使用 .NET Framework 方法 NewGuid 创建一个新的 GUID。此步骤是通过此示例中的第一个命令完成的,生成的 GUID 值存储在变量 $x 中。

创建 GUID 后,可以使用 New-CsClientVersionPolicyRule 创建新的规则。此命令使用以下四个参数:Parent,其参数值代表新规则的作用域 (site:Redmond);RuleId,其参数值为变量 $x(代表新创建的 GUID);MajorVersion (4) 和 UserAgent (InHouse)。在此示例中,UserAgent 参数代表内部客户端应用程序。

-------------------------- 示例 2 --------------------------

$x = [guid]::NewGuid()

$z = New-CsClientVersionPolicyRule -Parent "site:Redmond" -RuleId $x -InMemory
$z.MajorVersion = 4 
$z.UserAgent = "Inhouse"
Set-CsClientVersionPolicyRule -Instance $z

示例 2 中显示的命令代表示例 1 中所显示命令的变体:但在此示例中,新规则最初仅在内存中创建,并且只能稍后添加到 Lync Server 2010。为完成此任务,此示例中的第一个命令创建 Identity 的 GUID 部分。在第 2 个命令中,创建一个仅存在于内存中的新客户端版本策略规则,InMemory 参数确保该规则仅存在于内存中,不会立即添加到 Lync Server 2010 基础结构中。与示例 1 中相同,Parent 参数和 RuleId 参数用于指定新规则的作用域和 GUID,这两部分构成了规则 Identity。

创建虚拟规则后,接下来的两个命令分别用于为 MajorVersion 和 UserAgent 属性分配值。完成这些任务后,此示例中的最后一个命令和 Set-CsClientVersionPolicyRule cmdlet 用于创建实际客户端版本策略规则,并将该规则分配给 Redmond 站点。