Topic Last Modified: 2011-03-31

Creates a new collection of proxy configuration settings.

Syntax

New-CsProxyConfiguration -Identity <XdsIdentity> [-AcceptClientCompression <$true | $false>] [-AcceptServerCompression <$true | $false>] [-Confirm [<SwitchParameter>]] [-DisableNtlmFor2010AndLaterClients <$true | $false>] [-DnsCacheRecordCount <UInt32>] [-EnableWhiteSpaceKeepAlive <$true | $false>] [-Force <SwitchParameter>] [-InMemory <SwitchParameter>] [-MaxClientCompressionCount <UInt32>] [-MaxClientMessageBodySizeKb <UInt32>] [-MaxServerCompressionCount <UInt32>] [-MaxServerMessageBodySizeKb <UInt32>] [-OutgoingTlsCount <UInt32>] [-Realm <IRealmChoice>] [-RequestServerCompression <$true | $false>] [-TreatAllClientsAsRemote <$true | $false>] [-UseCertificateForClientToProxyAuth <$true | $false>] [-UseKerberosForClientToProxyAuth <$true | $false>] [-UseNtlmForClientToProxyAuth <$true | $false>] [-WhatIf [<SwitchParameter>]]

Parameters

Parameter Required Type Description

Identity

Required

Xds Identity

Unique identifier for the proxy server configuration settings to be created. Proxy server configuration settings can only be created at the service scope, and only for the Edge Server and Registrar services. You cannot create settings at the global scope; likewise, you cannot create settings at the service scope if the service in question already hosts a collection of proxy server settings. For example, if the service Registrar:atl-cs-001.litwareinc.com already hosts proxy server settings, then any command that attempts to create new settings for that service will fail.

To specify the Identity for your new proxy server settings, use syntax similar to this: -Identity "service:Registrar:atl-cs-001.litwareinc.com".

AcceptClientCompression

Optional

Boolean

When set to True (the default value), the proxy server will accept all incoming compression requests from client endpoints.

AcceptServerCompression

Optional

Boolean

When set to True (the default value), the proxy server will accept all incoming compression requests from other servers.

DisableNTLMFor2010AndLaterClients

Optional

Boolean

When set to True, users logging on from Microsoft Lync 2010 must use the Kerberos protocol for authentication. The default value is False.

EnableWhiteSpaceKeepAlive

Optional

Boolean

When set to True (the default value), the proxy server expects clients to periodically send a "whitespace message" (an empty message with no content) to indicate that the connection is still active.

MaxClientCompressionCount

Optional

Integer

Indicates the maximum number of client-to-server connections that can be compressed at any given time; additional connections beyond this limit will not be compressed. The compression count can be set to any integer value between 0 and 65535, inclusive. The default value is 15000.

MaxClientMessageBodySizeKB

Optional

Integer

The maximum-allowed size (in kilobytes) for the body of a message sent from a client endpoint. The default value is 128, meaning that messages with a body size larger than 128 KB will be rejected. The client message body size can be set to any integer value between 64 and 256, inclusive.

MaxServerCompressionCount

Optional

Integer

Indicates the maximum number of server-to-server connections that can be compressed at any given time; additional connections beyond this limit will not be compressed. The server compression count can be set to any integer value between 0 and 65535, inclusive. The default value is 1024.

MaxServerMessageBodySizeKB

Optional

Integer

The maximum-allowed size (in kilobytes) for the body of a message sent from another server. The default value is 5000, meaning that messages with a body size larger than 5000 KB will be rejected. The server message body size can be set to any integer value between 1000 and 20000, inclusive.

OutgoingTLSCount

Optional

Integer

Specifies the maximum number of Transport Layer Security (TLS) connections that can be used for each internal server. The minimum number of TLS connections is 1, and the maximum number is 4. By default, OutgoingTlsCount is set to 4.

Realm

Optional

SipProxy object

Indicates whether or not security credentials are processed by the default proxy server realm (SIP Communications Service) or by a custom realm. Custom realms must be specified (and created) by using the New-CsSipProxyCustom cmdlet.

RequestServerCompression

Optional

Boolean

When set to True (the default value) the proxy server requests that compression be used on all outgoing connections to other servers.

TreatAllClientsAsRemote

Optional

Boolean

When set to True, the proxy server functions as if all client connections are external connections that pass through the Edge Server running the Access Edge service. The default value is False.

UseCertificateForClientToProxyAuth

Optional

Boolean

When set to True (the default value), client endpoints will be allowed to use certificates for authentication.

UseKerberosForClientToProxyAuth

Optional

Boolean

When set to True (the default value), client endpoints will be allowed to use the Kerberos protocol for authentication. Although Kerberos is a more secure protocol than NTLM, it cannot be used if the client belongs to a different domain than the server.

UseNtlmForClientToProxyAuth

Optional

Boolean

When set to True (the default value), client endpoints will be allowed to use the NTLM protocol for authentication. Although NTLM is a less secure protocol than Kerberos, NTLM can be used if the client belongs to a different domain than the server. That is not true for Kerberos authentication.

Force

Optional

Switch Parameter

Suppresses the display of any non-fatal error message that might occur when running the command.

InMemory

Optional

Switch Parameter

Creates an object reference without actually committing the object as a permanent change. If you assign the output of this cmdlet called with this parameter to a variable, you can make changes to the properties of the object reference and then commit those changes by calling this cmdlet’s matching Set- cmdlet.

WhatIf

Optional

Switch Parameter

Describes what would happen if you executed the command without actually executing the command.

Confirm

Optional

Switch Parameter

Prompts you for confirmation before executing the command.

Detailed Description

Microsoft Lync Server 2010 enables you to manage your proxy servers through proxy server configuration settings. These settings, which can be applied at both the global scope and the service scope (albeit for only the Edge Server and Registrar services) enable you to control such things as the authentication protocols that can be used by client endpoints and whether or not compression will be used on incoming and outgoing proxy server connections. When you install Lync Server 2010, a global collection of proxy server configuration settings is automatically created for you. As noted, you can also create additional collections at the service scope. These new collections are created by using the New-CsProxyConfiguration cmdlet.

Who can run this cmdlet: By default, members of the following groups are authorized to run the New-CsProxyConfiguration cmdlet locally: RTCUniversalServerAdmins. To return a list of all the role-based access control (RBAC) roles this cmdlet has been assigned to (including any custom RBAC roles you have created yourself), run the following command from the Windows PowerShell prompt:

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

Input Types

None. New-CsProxyConfiguration does not accept pipelined input.

Return Types

New-CsProxyConfiguration creates new instances of the Microsoft.Rtc.Management.WritableConfig.Settings.SipProxy.ProxySettings object.

Example

-------------------------- Example 1 --------------------------

Copy Code
New-CsProxyConfiguration -Identity "service:EdgeServer:atl-edge-001.litwareinc.com" -RequestServerCompression $True -MaxClientMessageBodySizeKb 256

The preceding command creates a new collection of proxy configuration settings for the service EdgeServer:atl-edge-001.litwareinc.com. These new settings use all the default proxy server property values except for two: RequestServerCompression, which is set to True; and MaxClientMessageBodySizeKb, which is set to 256. Note that this command will fail if proxy server settings have already been configured for the service EdgeServer:atl-edge-001.litwareinc.com.

-------------------------- Example 2 --------------------------

Copy Code
$x = New-CsProxyConfiguration -Identity "service:EdgeServer:atl-edge-001.litwareinc.com" -InMemory
$x.RequestServerCompression = $True 
$x.MaxClientMessageBodySizeKb = 256
Set-CsProxyConfiguration -Instance $x

The commands shown in Example 2 demonstrate how you can create a collection of proxy server settings that initially exist only in memory. To do this, the first command calls New-CsProxyConfiguration along with two parameters: Identity (which specifies the Identity for the settings) and InMemory, which indicates that the new settings should be created in memory only. The resulting object is stored in the variable $x.

After these virtual settings have been created, commands 2 and 3 are used to modify the values of the RequestServerCompression and MaxClientMessageBodySizeKb properties, respectively. Finally, command 4 is used to transform the virtual proxy server configuration settings into an actual collection of settings applied to the service EdgeServer:atl-edge-001.litwareinc.com. This final command is mandatory. If you do not call Set-CsProxyConfiguration, no settings will be applied to EdgeServer:atl-edge-001.litwareinc.com and the virtual settings will disappear as soon as you end your Windows PowerShell session or delete the variable $x.

See Also