Add-AdfsRelyingPartyTrust
Adds a new relying party trust to the Federation Service.
Syntax
Add-AdfsRelyingPartyTrust
-Name <String>
-Identifier <String[]>
[-EncryptClaims <Boolean>]
[-Enabled <Boolean>]
[-EncryptionCertificate <X509Certificate2>]
[-AutoUpdateEnabled <Boolean>]
[-WSFedEndpoint <Uri>]
[-AdditionalWSFedEndpoint <String[]>]
[-ClaimAccepted <ClaimDescription[]>]
[-SamlEndpoint <SamlEndpoint[]>]
[-RequestSigningCertificate <X509Certificate2[]>]
[-EncryptedNameIdRequired <Boolean>]
[-SignedSamlRequestsRequired <Boolean>]
[-Notes <String>]
[-SignatureAlgorithm <String>]
[-SigningCertificateRevocationCheck <String>]
[-TokenLifetime <Int32>]
[-AlwaysRequireAuthentication]
[-RequestMFAFromClaimsProviders]
[-AllowedAuthenticationClassReferences <String[]>]
[-EncryptionCertificateRevocationCheck <String>]
[-NotBeforeSkew <Int32>]
[-ProtocolProfile <String>]
[-ClaimsProviderName <String[]>]
[-EnableJWT <Boolean>]
[-SamlResponseSignature <String>]
[-AllowedClientTypes <AllowedClientTypes>]
[-IssueOAuthRefreshTokensTo <RefreshTokenIssuanceDeviceTypes>]
[-RefreshTokenProtectionEnabled <Boolean>]
[-PassThru]
[-MonitoringEnabled <Boolean>]
[-ImpersonationAuthorizationRules <String>]
[-ImpersonationAuthorizationRulesFile <String>]
[-IssuanceTransformRules <String>]
[-IssuanceTransformRulesFile <String>]
[-IssuanceAuthorizationRules <String>]
[-IssuanceAuthorizationRulesFile <String>]
[-DelegationAuthorizationRules <String>]
[-DelegationAuthorizationRulesFile <String>]
[-AdditionalAuthenticationRules <String>]
[-AdditionalAuthenticationRulesFile <String>]
[-AccessControlPolicyName <String>]
[-AccessControlPolicyParameters <Object>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-AdfsRelyingPartyTrust
-Name <String>
-MetadataFile <String>
[-EncryptClaims <Boolean>]
[-Enabled <Boolean>]
[-AutoUpdateEnabled <Boolean>]
[-EncryptedNameIdRequired <Boolean>]
[-SignedSamlRequestsRequired <Boolean>]
[-Notes <String>]
[-SignatureAlgorithm <String>]
[-SigningCertificateRevocationCheck <String>]
[-TokenLifetime <Int32>]
[-AlwaysRequireAuthentication]
[-RequestMFAFromClaimsProviders]
[-AllowedAuthenticationClassReferences <String[]>]
[-EncryptionCertificateRevocationCheck <String>]
[-NotBeforeSkew <Int32>]
[-ProtocolProfile <String>]
[-ClaimsProviderName <String[]>]
[-EnableJWT <Boolean>]
[-SamlResponseSignature <String>]
[-AllowedClientTypes <AllowedClientTypes>]
[-IssueOAuthRefreshTokensTo <RefreshTokenIssuanceDeviceTypes>]
[-RefreshTokenProtectionEnabled <Boolean>]
[-PassThru]
[-MonitoringEnabled <Boolean>]
[-ImpersonationAuthorizationRules <String>]
[-ImpersonationAuthorizationRulesFile <String>]
[-IssuanceTransformRules <String>]
[-IssuanceTransformRulesFile <String>]
[-IssuanceAuthorizationRules <String>]
[-IssuanceAuthorizationRulesFile <String>]
[-DelegationAuthorizationRules <String>]
[-DelegationAuthorizationRulesFile <String>]
[-AdditionalAuthenticationRules <String>]
[-AdditionalAuthenticationRulesFile <String>]
[-AccessControlPolicyName <String>]
[-AccessControlPolicyParameters <Object>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-AdfsRelyingPartyTrust
-Name <String>
-MetadataUrl <Uri>
[-EncryptClaims <Boolean>]
[-Enabled <Boolean>]
[-AutoUpdateEnabled <Boolean>]
[-EncryptedNameIdRequired <Boolean>]
[-SignedSamlRequestsRequired <Boolean>]
[-Notes <String>]
[-SignatureAlgorithm <String>]
[-SigningCertificateRevocationCheck <String>]
[-TokenLifetime <Int32>]
[-AlwaysRequireAuthentication]
[-RequestMFAFromClaimsProviders]
[-AllowedAuthenticationClassReferences <String[]>]
[-EncryptionCertificateRevocationCheck <String>]
[-NotBeforeSkew <Int32>]
[-ProtocolProfile <String>]
[-ClaimsProviderName <String[]>]
[-EnableJWT <Boolean>]
[-SamlResponseSignature <String>]
[-AllowedClientTypes <AllowedClientTypes>]
[-IssueOAuthRefreshTokensTo <RefreshTokenIssuanceDeviceTypes>]
[-RefreshTokenProtectionEnabled <Boolean>]
[-PassThru]
[-MonitoringEnabled <Boolean>]
[-ImpersonationAuthorizationRules <String>]
[-ImpersonationAuthorizationRulesFile <String>]
[-IssuanceTransformRules <String>]
[-IssuanceTransformRulesFile <String>]
[-IssuanceAuthorizationRules <String>]
[-IssuanceAuthorizationRulesFile <String>]
[-DelegationAuthorizationRules <String>]
[-DelegationAuthorizationRulesFile <String>]
[-AdditionalAuthenticationRules <String>]
[-AdditionalAuthenticationRulesFile <String>]
[-AccessControlPolicyName <String>]
[-AccessControlPolicyParameters <Object>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Add-AdfsRelyingPartyTrust cmdlet adds a new relying party trust to the Federation Service. You can specify a relying party trust manually, or you can provide a federation metadata document to bootstrap initial configuration.
Examples
Example 1: Add a relying party trust
PS C:\> Add-ADFSRelyingPartyTrust -Name "Fabrikam" -MetadataURL "https://fabrikam.com/federationmetadata/2007-06/federationmetadata.xml"
This command adds a relying party trust named Fabrikam for federation.
Parameters
-AccessControlPolicyName
Specifies the name of an access control policy.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-AccessControlPolicyParameters
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-AdditionalAuthenticationRules
Specifies the additional authorization rules to require additional authentication based on user, device and location attributes after the completion of the first step of authentication. Note: These rules must only be configured after there is at least one authentication provider enabled for additional authentication.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-AdditionalAuthenticationRulesFile
Specifies a file that contains the additional authentication rules to require additional authentication when a user is attempting to access this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AdditionalWSFedEndpoint
Specifies an array of alternate return addresses for the application. This is typically used when the application wants to indicate to AD FS what the return URL should be on successful token generation. AD FS requires that all acceptable URLs are entered as trusted information by the administrator.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowedAuthenticationClassReferences
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowedClientTypes
Specifies allowed client types. The acceptable values for this parameter are:
- None
- Public
- Confidential
Type: | AllowedClientTypes |
Accepted values: | None, Public, Confidential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AlwaysRequireAuthentication
Indicates to always require authentication.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-AutoUpdateEnabled
Indicates whether changes to the federation metadata by the MetadataURL parameter apply automatically to the configuration of the trust relationship. If this parameter has a value of $True, partner claims, certificates, and endpoints are updated automatically.
Note: When auto-update is enabled, fields that can be overwritten by metadata become read only.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ClaimAccepted
Specifies an array of claims that this relying party accepts.
Type: | ClaimDescription[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ClaimsProviderName
Specifies an array of claims provider names.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DelegationAuthorizationRules
Specifies the delegation authorization rules for issuing claims to this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DelegationAuthorizationRulesFile
Specifies a file that contains the delegation authorization rules for issuing claims to this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Enabled
Indicates whether the relying party trust is enabled.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableJWT
Indicates whether the JSON Web Token (JWT) format should be used to issue a token on a WS-Federation request. By default, SAML tokens are issued over WS-Federation.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EncryptClaims
Indicates whether the claims that are sent to the relying party are encrypted.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EncryptedNameIdRequired
Indicates whether the relying party requires that the NameID claim be encrypted.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EncryptionCertificate
Specifies the certificate to be used for encrypting claims that are issued to this relying party. Encrypting claims is optional.
Type: | X509Certificate2 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EncryptionCertificateRevocationCheck
Specifies the type of validation that should occur for the encryption certificate it is used for encrypting claims to the relying party. The acceptable values for this parameter are:
- None
- CheckEndCert
- CheckEndCertCacheOnly
- CheckChain
- CheckChainCacheOnly
- CheckChainExcludeRoot
- CheckChainExcludeRootCacheOnly
Type: | String |
Accepted values: | CheckChain, CheckChainCacheOnly, CheckChainExcludeRoot, CheckChainExcludeRootCacheOnly, CheckEndCert, CheckEndCertCacheOnly, None |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Identifier
Specifies the unique identifiers for this relying party trust. No other trust can use an identifier from this list. Uniform Resource Identifiers (URIs) are often used as unique identifiers for a relying party trust, but you can use any string of characters.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ImpersonationAuthorizationRules
Specifies the impersonation authorization rules for issuing claims to this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ImpersonationAuthorizationRulesFile
Specifies the file that contains the impersonation authorization rules for issuing claims to this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IssuanceAuthorizationRules
Specifies the issuance authorization rules for issuing claims to this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-IssuanceAuthorizationRulesFile
Specifies the file that contains the issuance authorization rules for issuing claims to this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IssuanceTransformRules
Specifies the issuance transform rules for issuing claims to this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-IssuanceTransformRulesFile
Specifies the file that contains the issuance transform rules for issuing claims to this relying party.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IssueOAuthRefreshTokensTo
Specifies the refresh token issuance device types. The acceptable values for this parameter are:
- NoDevice
- WorkplaceJoinedDevices
- AllDevices
Type: | RefreshTokenIssuanceDeviceTypes |
Accepted values: | NoDevice, WorkplaceJoinedDevices, AllDevices |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MetadataFile
Specifies a file path, such as c:\metadata.xml, that contains the federation metadata for this relying party trust.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MetadataUrl
Specifies a URL at which the federation metadata for this relying party trust is available.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MonitoringEnabled
Indicates whether periodic monitoring of this relying party federation metadata is enabled. The MetadataUrl parameter specifies the URL of the relying party federation metadata.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Specifies the friendly name of this relying party trust.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NotBeforeSkew
Specifies the skew, as in integer, for the time stamp that marks the beginning of the validity period. The higher this number is, the further back in time the validity period begins with respect to the time that the claims are issued for the relying party. By default, this value is 0. Specify a positive value if validation fails on the relying party because the validity period has not yet begun.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Notes
Specifies notes for this relying party trust.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProtocolProfile
Specifies which protocol profiles the relying party supports. The acceptable values for this parameter are:
- SAML
- WsFederation
- WsFed-SAML
The default value is WsFed-SAML.
Type: | String |
Accepted values: | WsFed-SAML, WSFederation, SAML |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RefreshTokenProtectionEnabled
Indicates that refresh token protection is enabled.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequestMFAFromClaimsProviders
Indicates whether to use the request MFA from claims providers option.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-RequestSigningCertificate
Specifies an array of certificates to be used to verify the signature on a request from the relying party.
Type: | X509Certificate2[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SamlEndpoint
Specifies an array of Security Assertion Markup Language (SAML) protocol endpoints for this relying party.
Type: | SamlEndpoint[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SamlResponseSignature
Specifies the response signature or signatures that the relying party expects. The acceptable values for this parameter are:
- AssertionOnly
- MessageAndAssertion
- MessageOnly
Type: | String |
Accepted values: | AssertionOnly, MessageAndAssertion, MessageOnly |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SignatureAlgorithm
Specifies the signature algorithm that the relying party uses for signing and verification. The acceptable values for this parameter are:
Type: | String |
Accepted values: | https://www.w3.org/2000/09/xmldsig#rsa-sha1, https://www.w3.org/2001/04/xmldsig-more#rsa-sha256 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SignedSamlRequestsRequired
Indicates whether the Federation Service requires signed SAML protocol requests from the relying party. If you specify a value of $True, the Federation Service rejects unsigned SAML protocol requests.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SigningCertificateRevocationCheck
Specifies the type of certificate validation that occur when signatures on requests from the relying party are verified. The acceptable values for this parameter are:
- None
- CheckEndCert
- CheckEndCertCacheOnly
- CheckChain
- CheckChainCacheOnly
- CheckChainExcludeRoot
- CheckChainExcludeRootCacheOnly
Type: | String |
Accepted values: | CheckChain, CheckChainCacheOnly, CheckChainExcludeRoot, CheckChainExcludeRootCacheOnly, CheckEndCert, CheckEndCertCacheOnly, None |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TokenLifetime
Specifies the duration, in minutes, for which the claims that are issued to the relying party are valid.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WSFedEndpoint
Specifies the WS-Federation Passive URL for this relying party.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
String objects are received by the AccessControlPolicyName, AdditionalAuthenticationRules, DelegationAuthorizationRules, ImpersonationAuthorizationRules, IssuanceAuthorizationRules, and IssuanceTransformRules parameters.
Objects are received by the AccessControlPolicyParameters parameter.
SwitchParameter objects are received by the AlwaysRequireAuthentication and RequestMFAFromClaimsProviders parameters.
Microsoft.IdentityServer.PowerShell.Resources.ClaimDescription
ClaimDescription Objects are received by the ClaimAccepted parameter.
X509Certificate2 objects are received by the RequestSigningCertificate parameter.
Microsoft.IdentityServer.PowerShell.Resources.SamlEndpoint
SamlEndpoint objects are received by the SamlEndpoint parameter.
Outputs
Microsoft.IdentityServer.PowerShell.Resources.RelyingPartyTrust
Returns the new RelyingPartyTrust object when the PassThru parameter is specified. By default, this cmdlet does not generate any output.
Notes
- A relying party in Active Directory Federation Services (AD FS) is an organization in which Web servers that host one or more Web-based applications reside. Tokens and Information Cards that originate from a claims provider can then be presented and ultimately accessed by the Web-based resources that are located in the relying party organization. When AD FS is configured in the role of the relying party, it acts as a partner that trusts a claims provider to authenticate users. Therefore, the relying party accesses the claims that are packaged in security tokens that come from users in the claims provider. In other words, a relying party is the organization whose Web servers are protected by the resource-side federation server. The federation server in the relying party uses the security tokens that the claims provider produces to issue tokens to the Web servers that are located in the relying party.