Add-AdfsClaimsProviderTrust
Adds a new claims provider trust to the Federation Service.
Syntax
Add-AdfsClaimsProviderTrust
-Name <String>
-Identifier <String>
-TokenSigningCertificate <X509Certificate2[]>
[-AutoUpdateEnabled <Boolean>]
[-AllowCreate <Boolean>]
[-AnchorClaimType <String>]
[-CustomMFAUri <Uri>]
[-EncryptionCertificateRevocationCheck <String>]
[-Enabled <Boolean>]
[-Notes <String>]
[-ProtocolProfile <String>]
[-EncryptedNameIdRequired <Boolean>]
[-SamlAuthenticationRequestIndex <UInt16>]
[-SamlAuthenticationRequestParameters <String>]
[-SamlAuthenticationRequestProtocolBinding <String>]
[-SignatureAlgorithm <String>]
[-SigningCertificateRevocationCheck <String>]
[-SupportsMfa]
[-PromptLoginFederation <PromptLoginFederation>]
[-PromptLoginFallbackAuthenticationType <String>]
[-RequiredNameIdFormat <Uri>]
[-EncryptionCertificate <X509Certificate2>]
[-OrganizationalAccountSuffix <String[]>]
[-WSFedEndpoint <Uri>]
[-ClaimOffered <ClaimDescription[]>]
[-SamlEndpoint <SamlEndpoint[]>]
[-SignedSamlRequestsRequired <Boolean>]
[-PassThru]
[-AcceptanceTransformRules <String>]
[-AcceptanceTransformRulesFile <String>]
[-MonitoringEnabled <Boolean>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-AdfsClaimsProviderTrust
-Name <String>
[-AutoUpdateEnabled <Boolean>]
[-AllowCreate <Boolean>]
[-AnchorClaimType <String>]
[-EncryptionCertificateRevocationCheck <String>]
[-Enabled <Boolean>]
[-Notes <String>]
[-ProtocolProfile <String>]
[-EncryptedNameIdRequired <Boolean>]
[-SamlAuthenticationRequestIndex <UInt16>]
[-SamlAuthenticationRequestParameters <String>]
[-SamlAuthenticationRequestProtocolBinding <String>]
[-SignatureAlgorithm <String>]
[-SigningCertificateRevocationCheck <String>]
[-PromptLoginFederation <PromptLoginFederation>]
[-PromptLoginFallbackAuthenticationType <String>]
[-RequiredNameIdFormat <Uri>]
[-OrganizationalAccountSuffix <String[]>]
[-MetadataFile <String>]
[-SignedSamlRequestsRequired <Boolean>]
[-PassThru]
[-AcceptanceTransformRules <String>]
[-AcceptanceTransformRulesFile <String>]
[-MonitoringEnabled <Boolean>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-AdfsClaimsProviderTrust
-Name <String>
[-AutoUpdateEnabled <Boolean>]
[-AllowCreate <Boolean>]
[-AnchorClaimType <String>]
[-EncryptionCertificateRevocationCheck <String>]
[-Enabled <Boolean>]
[-Notes <String>]
[-ProtocolProfile <String>]
[-EncryptedNameIdRequired <Boolean>]
[-SamlAuthenticationRequestIndex <UInt16>]
[-SamlAuthenticationRequestParameters <String>]
[-SamlAuthenticationRequestProtocolBinding <String>]
[-SignatureAlgorithm <String>]
[-SigningCertificateRevocationCheck <String>]
[-PromptLoginFederation <PromptLoginFederation>]
[-PromptLoginFallbackAuthenticationType <String>]
[-RequiredNameIdFormat <Uri>]
[-OrganizationalAccountSuffix <String[]>]
[-MetadataUrl <Uri>]
[-SignedSamlRequestsRequired <Boolean>]
[-PassThru]
[-AcceptanceTransformRules <String>]
[-AcceptanceTransformRulesFile <String>]
[-MonitoringEnabled <Boolean>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Add-AdfsClaimsProviderTrust cmdlet adds a new claims provider trust to the Federation Service. Use this cmdlet when users from a partner organization need to access resources (relying parties) protected by the Active Directory Federation Services (AD FS) service. You can specify a claims provider trust manually, or you can provide a federation metadata document to bootstrap initial configuration.
In Windows Server 2016, AD FS supports the prompt=login parameter. When AD FS is acting as a federation provider, these new properties on the claims provider trust determine how AD FS handles the parameter.
Examples
Example 1: Add a claims provider trust
PS C:\> Add-AdfsClaimsProviderTrust -Name "Fabrikam" -MetadataURL "https://fabrikam.com/federationmetadata/2007-06/federationmetadata.xml"
This command adds a claims provider trust named Fabrikam that has the specified metadata URL to the Federation Service.
Parameters
-AcceptanceTransformRules
Specifies the claim acceptance transform rules for accepting claims from this claims provider. These rules determine the information that is accepted from the partner represented by the claims provider trust.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-AcceptanceTransformRulesFile
Specifies a file that contains the claim acceptance transform rules for accepting claims from the claims provider.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowCreate
Indicates whether the Security Assertion Markup Language (SAML) parameter AllowCreate is sent in SAML requests to the claims provider. The default values $True.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AnchorClaimType
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
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 |
-ClaimOffered
Specifies an array of claims that are offered by this claims provider.
Type: | ClaimDescription[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
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 |
-CustomMFAUri
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Enabled
Indicates whether the claims provider trust is enabled or disabled.
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. This setting applies to SAML logout requests.
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 a NameID to this claims provider in SAML logout requests. Encrypting the NameID 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 occurs for the encryption certificate before it is used for encrypting claims. 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 identifier for this claims provider trust. No other trust can use an identifier from this list. Uniform Resource Identifiers (URIs) are often used as unique identifiers for a claims provider 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 |
-MetadataFile
Specifies a file path, such as c:\metadata.xml, that contains the federation metadata to be used when this claims provider trust is created.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MetadataUrl
Specifies a URL at which the federation metadata for this claims provider trust is available.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MonitoringEnabled
Indicates whether periodic monitoring of this claims provider's federation metadata is enabled. The URL of the claims provider's federation metadata is specified by the MetadataUrl parameter.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Specifies the friendly name of this claims provider trust.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Notes
Specifies notes for this claims provider trust.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OrganizationalAccountSuffix
Specifies an array of organizational account suffixes an administrator can configure for the claims provider trust for a Home Realm Discovery (HRD) scenario.
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 |
-PromptLoginFallbackAuthenticationType
Specifies a fallback authentication type for a prompt login request.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PromptLoginFederation
The acceptable values for this parameter are:
- None. Do not federate prompt=login request and error instead.
- FallbackToProtocolSpecificParameters. Translate prompt=login to wfresh=0 and Wauth=forms during federation. If wauth is present in the original request, it will be preserved.
- ForwardPromptAndHintsOverWsFederation. Forward prompt, login_hint, and domain_hint parameters during federation.
Type: | PromptLoginFederation |
Accepted values: | None, FallbackToProtocolSpecificParameters, ForwardPromptAndHintsOverWsFederation, Disabled |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProtocolProfile
Specifies which protocol profiles the claims provider supports. The acceptable values for this parameter are:
- SAML
- WsFederation
- WsFed-SAML.
The default value is WsFed-SAML.
Type: | String |
Accepted values: | WSFederation, WsFed-SAML, SAML |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredNameIdFormat
Specifies the format that is required for NameID claims to be included in SAML requests to the claims provider. By default, no format is required.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SamlAuthenticationRequestIndex
Specifies the value of AssertionConsumerServiceIndex that will be placed in SAML authentication requests that are sent to the claims provider.
Type: | UInt16 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SamlAuthenticationRequestParameters
Specifies which of the following parameters to use in SAML authentication requests to the claims provider: AssertionConsumerServiceIndex, AssertionConsumerServiceUrl, and ProtocolBinding.The acceptable values for this parameter are:
- None
- Index
- Url
- ProtocolBinding
- UrlWithProtocolBinding
Type: | String |
Accepted values: | Index, None, ProtocolBinding, Url, UrlWithProtocolBinding |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SamlAuthenticationRequestProtocolBinding
Specifies the value of ProtocolBinding to place in SAML authentication requests to the claims provider. The acceptable values for this parameter are:
- Artifact
- Post
- Redirect
Type: | String |
Accepted values: | Artifact, POST, Redirect |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SamlEndpoint
Specifies an array of SAML protocol endpoints for this claims provider.
Type: | SamlEndpoint[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SignatureAlgorithm
Specifies the signature algorithm that the claims provider 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 occurs when signatures are verified on responses or assertions from the claims provider. 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 |
-SupportsMfa
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TokenSigningCertificate
Specifies an array of token-signing certificates that the claims provider uses.
Type: | X509Certificate2[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
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 claims provider.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
String objects are received by the AcceptanceTransformRules parameter.
Microsoft.IdentityServer.PowerShell.Resources.ClaimDescription
ClaimDescription objects are received by the SamlEndpoint parameter.
System.Security.Cryptography.X509Certificates.X509Certificate.X509Certificate2
X509Certificate2 objects are received by the TokenSigningCertificate parameter.
Outputs
Microsoft.IdentityServer.PowerShell.Resources.ClaimsProviderTrust
Returns the new ClaimsProviderTrust object when the PassThru parameter is specified. By default, this cmdlet does not generate any output.
Notes
- The claims provider is responsible for collecting and authenticating a user's credentials, building up claims for that user, and packaging the claims into security tokens or Information Cards. In other words, a claims provider represents the organization for whose users the claims provider issues security tokens or Information Cards on their behalf. When you configure Active Directory Federation Services (AD FS) to use federation services, the role of the claims provider is to enable its users to access resources that a relying party organization hosts by establishing one side of a federation trust relationship. After the trust is established, tokens and Information Cards can be presented to the relying party across the federation trust.