Topic Last Modified: 2013-03-25

Creates a new partner application. A partner application is any application that Lync Server 2013 can directly exchange security tokens with, without having to go through a third-party security token server. This cmdlet was introduced in Lync Server 2013.

Syntax

New-CsPartnerApplication -ApplicationIdentifier <String> -ApplicationTrustLevel <User | Application | Full> -CertificateRawData <String> -Realm <String> [-AcceptSecurityIdentifierInformation <$true | $false>] [-Enabled <$true | $false>] [-Identity <XdsGlobalRelativeIdentity>] [-Tenant <Guid>] <COMMON PARAMETERS>
New-CsPartnerApplication -ApplicationIdentifier <String> -ApplicationTrustLevel <User | Application | Full> -CertificateFileData <String> -Realm <String> [-AcceptSecurityIdentifierInformation <$true | $false>] [-Enabled <$true | $false>] [-Identity <XdsGlobalRelativeIdentity>] [-Tenant <Guid>] <COMMON PARAMETERS>
New-CsPartnerApplication -ApplicationIdentifier <String> -ApplicationTrustLevel <User | Application | Full> -UseOAuthServer <SwitchParameter> [-AcceptSecurityIdentifierInformation <$true | $false>] [-Enabled <$true | $false>] [-Identity <XdsGlobalRelativeIdentity>] [-Realm <String>] [-Tenant <Guid>] <COMMON PARAMETERS>
New-CsPartnerApplication -ApplicationTrustLevel <User | Application | Full> -MetadataUrl <String> [-AcceptSecurityIdentifierInformation <$true | $false>] [-Enabled <$true | $false>] [-Identity <XdsGlobalRelativeIdentity>] [-Tenant <Guid>] <COMMON PARAMETERS>
COMMON PARAMETERS: [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-InMemory <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

Examples

Example 1

The command shown in Example 1 creates a new partner application with the Identity "MicrosoftExchange". In this example, the new partner application uses the metadata URL https://autodiscover.litwareinc.com/metadata/json/1.

Copy Code
New-CsPartnerApplication -Identity "MicrosoftExchange" -ApplicationTrustLevel "Full" -MetadataUrl"https://autodiscover.litwareinc.com/metadata/json/1"

Example 2

The command shown in Example 2 also creates a new partner application with the Identity "MicrosoftExchange". In this case, however, the new partner application does not use a metadata URL but, instead, is configured to use a predefined OAuth Server. To do this, the command uses the UseOAuthServer parameter instead of the MetadataUrl parameter.

Copy Code
New-CsPartnerApplication -Identity "MicrosoftExchange" -ApplicationIdentifier "microsoft.exchange" -ApplicationTrustLevel "Full" -UseOAuthServer

Detailed Description

In Lync Server 2013, server-to-server authentication (for example, the authentication that enables Lync Server 2013 and Exchange 2013 to share information) is carried out by using the OAuth security protocol. This type of authentication typically requires three servers: the two servers that need to communicate with one another (Server A and B) and a third-party security token server. If Servers A and B need to communicate with one another, the two servers contact the token server (also known as an OAuth server) and obtain mutually-trusted security tokens that the two servers can exchange in order to prove their identities.

If you are using an on-premises version of Lync Server 2013 and you need to communicate with another server product that fully supports the OAuth protocol (for example, Exchange 2013 or Microsoft SharePoint 2013) then you typically do not need to use a token server; that's because these server products are able to issue their own security tokens. However, you will need to configure the other server product (e.g., Exchange 2013) as a partner application. (You will also need to configure Lync Server 2013 as a partner application for the other server product.) In Lync Server 2013, partner applications are managed by using the CsPartnerApplication cmdlets.

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-CsPartnerApplication"}

Lync Server Control Panel: The functions carried out by the New-CsPartnerApplication cmdlet are not available in the Lync Server Control Panel.

Parameters

Parameter Required Type Description

ApplicationIdentifier

Required

String

Unique identifier for the partner application. The ApplicationIdentifier is provided by the server application. You cannot use the ApplicationIdentifier parameter and the MetadataUrl parameter in the same command.

ApplicationTrustLevel

Required

ApplicationTrustLevel

Specifies the level of trust between Lync Server 2013 and the partner application. Allowed values are:

* Full -- The partner application is trusted to represent itself and to impersonate any user in the realm. This is the default value.

* Application -- The partner application is trusted to represent itself within the realm. In order to impersonate a user, it must obtain consent through from a security token server.

* User -- The partner application must obtain consent from a security token server in order to represent a user, and cannot represent itself.

The default value is Full.

CertificateFileData

Required

String

Path to a certificate file that can be assigned to the partner application. For example:

-CertificateFileData "C:\Certificates\PartnerApplication.cer"

CertificateRawData

Required

String

Certificate (in Base64 encoded format) that can be assigned to the partner application. To read raw data from a certificate and then convert that data to the required format, use commands similar to these:

$x = Get-Content "C:\Certificates\PartnerApplication.cer" –Encoding Byte

$y = [Convert]::ToBase64String($x)

You can then use this syntax to assign the certificate data stored in the variable $y:

-CertificateRawData $y

MetadataUrl

Required

String

URL where the WS-FederationMetadata for the partner application is published. Partner applications use the metadata to agree on the types of tokens that will be exchanged as well the keys that will be used to sign these tokens.

UseOAuthServer

Optional

SwitchParameter

When present, indicates that the partner application will use one of the pre-authorized OAuth servers instead of a security token server built into the application itself.

AcceptSecurityIdentifierInformation

Optional

Boolean

When set to True ($True), security identifiers (SIDs) can be used for authentication purposes. The default value is False.

Confirm

Optional

SwitchParameter

Prompts you for confirmation before executing the command.

Enabled

Optional

Boolean

When set to True the partner application will be enabled and available for immediate use. The default value is True.

Force

Optional

SwitchParameter

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

Identity

Optional

XdsGlobalRelativeIdentity

Unique identifier for the new partner application.

InMemory

Optional

SwitchParameter

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.

Realm

Optional

String

Server-to-server security container. By default, Lync Server 2013 uses your default SIP domain as its OAuth realm.

Tenant

Optional

Guid

Globally unique identifier (GUID) of the Lync Online tenant account for which the new partner application is being created. For example:

–Tenant "38aad667-af54-4397-aaa7-e94c79ec2308"

You can return the tenant ID for each of your tenants by running this command:

Get-CsTenant | Select-Object DisplayName, TenantID

WhatIf

Optional

SwitchParameter

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

Input Types

None. The New-CsPartnerApplication cmdlet does not accept pipelined input.

Return Types

The New-CsPartnerApplication cmdlet creates new instances of the Microsoft.Rtc.Management.WritableConfig.Settings.SSAuth.PartnerApplication#Decorated object.

See Also