Class ClaimsParty
java.lang.Object
swiss.trustbroker.federation.xmlconfig.CounterParty
swiss.trustbroker.federation.xmlconfig.ClaimsParty
- All Implemented Interfaces:
Serializable,PathReference
This class describes the configuration of a claims provider (CP).
Note on the name: The ClaimsProvider class is already taken for the HRD configuration, and we do not (yet) want to merge those two classes into one, because the want to reuse the ClaimsProviderDefinitions that also contain ClaimsProvider configurations but mainly for the UI display. So we name this class ClaimsParty, a mix of 'Asserting Party' (the counterpart of the 'RelyingParty') and the ClaimsProvider we would want to use ending up in the shortcut CP again.
Note on the name: The ClaimsProvider class is already taken for the HRD configuration, and we do not (yet) want to merge those two classes into one, because the want to reuse the ClaimsProviderDefinitions that also contain ClaimsProvider configurations but mainly for the UI display. So we name this class ClaimsParty, a mix of 'Asserting Party' (the counterpart of the 'RelyingParty') and the ClaimsProvider we would want to use ending up in the shortcut CP again.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classClaimsParty.ClaimsPartyBuilder<C extends ClaimsParty,B extends ClaimsParty.ClaimsPartyBuilder<C, B>> Nested classes/interfaces inherited from class swiss.trustbroker.federation.xmlconfig.CounterParty
CounterParty.CounterPartyBuilder<C extends CounterParty,B extends CounterParty.CounterPartyBuilder<C, B>> -
Constructor Summary
ConstructorsModifierConstructorDescriptionClaimsParty(String id, FeatureEnum enabled, Boolean disableACUrl, StatusPolicy statusPolicy, ProvisioningMode provision, String authLevel, String strongestPossibleAuthLevel, HomeName homeName, AccountSource accountSource, String originalIssuer, String authnRequestIssuerId, String responseIssuer, String ssoUrl, Certificates certificates, SecurityPolicies securityPolicies, Oidc oidc, Saml saml, WsTrust wsTrust, SubjectNameMappings subjectNameMappings, Qoa qoa, Provisioning provisioning, AttributesSelection attributesSelection, Scripts scripts, List<org.opensaml.security.credential.Credential> cpTrustCredential, List<org.opensaml.security.credential.Credential> cpDecryptionCredentials, org.opensaml.security.credential.Credential cpBackendClientCredential, List<org.opensaml.security.credential.Credential> cpBackendTrustCredentials) Creates a newClaimsPartyinstance.protected -
Method Summary
Modifier and TypeMethodDescriptionbooleanstatic ClaimsParty.ClaimsPartyBuilder<?, ?> builder()protected booleanbooleanThe Account Source consumed by theIdmProvisioningServiceThe filtering is done when the SAML response is received from the CP.Configure what QoA the CP can deliver per default, e.g.Override of the global issuer for this CP.getAuthnRequestIssuerId(String defaultIssuerId) You only need to declare SignerTruststore for SAML response verification.org.opensaml.security.credential.CredentialList<org.opensaml.security.credential.Credential> List<org.opensaml.security.credential.Credential> List<org.opensaml.security.credential.Credential> This flag allows to disable setting the AssertionConsumerServiceURL in the AuthnRequest towards the CP as some CPs do fail when it is set (correctly or incorrectly).Flag to enable/disable this CP.The homeName is usually consumed from the home name attribute and identifies the CP attribute to consume the CP identity from instead of the subject name ID source.getId()Issuer ID of the claims provider that need to match ClaimsProvider entries in ClaimsProviderDefinitions for HRD display and have to be returned by CPs in SAML responses.getOidc()OIDC client configuration to integrate CP/IDPProvisioning configurations for this CP.getQoa()QoA configurations for this CP.getSaml()SAML protocol configuration for this CP.Script hooks.Global security policy overrides for this CP.SAML POST endpoint on the CP.This status policy determines the handling of users that are not found in the IDM: BLOCK_UNKNOWN_USER, ALLOW_UNKNOWN_USER.This attribute allows to map a QoA ofSubject Name ID mappings for this CP.WS-Trust protocol configuration for this CP.inthashCode()booleanvoidsetAccountSource(AccountSource accountSource) The Account Source consumed by theIdmProvisioningServicevoidsetAttributesSelection(AttributesSelection attributesSelection) The filtering is done when the SAML response is received from the CP.voidsetAuthLevel(String authLevel) Configure what QoA the CP can deliver per default, e.g.voidsetAuthnRequestIssuerId(String authnRequestIssuerId) Override of the global issuer for this CP.voidsetCertificates(Certificates certificates) You only need to declare SignerTruststore for SAML response verification.voidsetCpBackendClientCredential(org.opensaml.security.credential.Credential cpBackendClientCredential) voidsetCpBackendTrustCredentials(List<org.opensaml.security.credential.Credential> cpBackendTrustCredentials) voidsetCpDecryptionCredentials(List<org.opensaml.security.credential.Credential> cpDecryptionCredentials) voidsetCpTrustCredential(List<org.opensaml.security.credential.Credential> cpTrustCredential) voidsetDisableACUrl(Boolean disableACUrl) This flag allows to disable setting the AssertionConsumerServiceURL in the AuthnRequest towards the CP as some CPs do fail when it is set (correctly or incorrectly).voidsetEnabled(FeatureEnum enabled) Flag to enable/disable this CP.voidsetHomeName(HomeName homeName) The homeName is usually consumed from the home name attribute and identifies the CP attribute to consume the CP identity from instead of the subject name ID source.voidIssuer ID of the claims provider that need to match ClaimsProvider entries in ClaimsProviderDefinitions for HRD display and have to be returned by CPs in SAML responses.voidOIDC client configuration to integrate CP/IDPvoidsetOriginalIssuer(String originalIssuer) The original issuer is by default consumed as is and not changed in the CP handling of XTB.voidsetProvision(ProvisioningMode provision) Enable IDM provisioning based on CP response.voidsetProvisioning(Provisioning provisioning) Provisioning configurations for this CP.voidQoA configurations for this CP.voidsetResponseIssuer(String responseIssuer) Override ID as expected issuer of CP response.voidSAML protocol configuration for this CP.voidsetScripts(Scripts scripts) Script hooks.voidsetSecurityPolicies(SecurityPolicies securityPolicies) Global security policy overrides for this CP.voidSAML POST endpoint on the CP.voidsetStatusPolicy(StatusPolicy statusPolicy) This status policy determines the handling of users that are not found in the IDM: BLOCK_UNKNOWN_USER, ALLOW_UNKNOWN_USER.voidsetStrongestPossibleAuthLevel(String strongestPossibleAuthLevel) This attribute allows to map a QoA ofvoidsetSubjectNameMappings(SubjectNameMappings subjectNameMappings) Subject Name ID mappings for this CP.voidsetWsTrust(WsTrust wsTrust) WS-Trust protocol configuration for this CP.toString()Methods inherited from class swiss.trustbroker.federation.xmlconfig.CounterParty
doSignArtifactResolve, forceAuthn, forwardRpProtocolBinding, getAllowedSignatureAlgorithms, getAttributesDefinitions, getEncryption, getOidcClients, getQoaConfig, getSamlArtifactBinding, getSamlProtocolEndpoints, getSignature, getSignatureParametersBuilder, getSsoMinQoaLevel, getSubPath, getSupportedSamlBindings, getSupportedWsTrustBindings, getValidationStatus, getWsTrustIssueNotBeforeToleranceSec, getWsTrustIssueNotOnOrAfterToleranceSec, initializedValidationStatus, invalidate, invalidate, isEnabled, isOidcEnabled, isSamlEnabled, isValid, isValidInboundBinding, isValidInboundBinding, isWsTrustEnabled, requireEncryptedAssertion, requireSignedArtifactResponse, requireSignedAuthnRequest, requireSignedAuthnRequestForSsoJoin, requireSignedLogoutNotificationRequest, requireSignedLogoutRequest, requireSignedResponse, setSubPath, setValidationStatus, validateHttpHeaders, wsTrustIssueRequireSignedAssertion, wsTrustIssueRequireSignedRequest, wsTrustIssueRequireTimestamp
-
Constructor Details
-
ClaimsParty
-
ClaimsParty
public ClaimsParty() -
ClaimsParty
public ClaimsParty(String id, FeatureEnum enabled, Boolean disableACUrl, StatusPolicy statusPolicy, ProvisioningMode provision, String authLevel, String strongestPossibleAuthLevel, HomeName homeName, AccountSource accountSource, String originalIssuer, String authnRequestIssuerId, String responseIssuer, String ssoUrl, Certificates certificates, SecurityPolicies securityPolicies, Oidc oidc, Saml saml, WsTrust wsTrust, SubjectNameMappings subjectNameMappings, Qoa qoa, Provisioning provisioning, AttributesSelection attributesSelection, Scripts scripts, List<org.opensaml.security.credential.Credential> cpTrustCredential, List<org.opensaml.security.credential.Credential> cpDecryptionCredentials, org.opensaml.security.credential.Credential cpBackendClientCredential, List<org.opensaml.security.credential.Credential> cpBackendTrustCredentials) Creates a newClaimsPartyinstance.- Parameters:
id- Issuer ID of the claims provider that need to match ClaimsProvider entries in ClaimsProviderDefinitions for HRD display and have to be returned by CPs in SAML responses.
Notes:- CP IDs must be unique within the configuration of each environment
(
trustbroker-inventories/environment) - CP IDs may overlap with RP IDs.
- For SAML this ID is also used by the actual CP.
- For OIDC this just an internal ID.
- CP IDs must be unique within the configuration of each environment
(
enabled- Flag to enable/disable this CP.
Default is true.disableACUrl- This flag allows to disable setting the AssertionConsumerServiceURL in the AuthnRequest towards the CP as some CPs do fail when it is set (correctly or incorrectly).statusPolicy- This status policy determines the handling of users that are not found in the IDM: BLOCK_UNKNOWN_USER, ALLOW_UNKNOWN_USER.provision- Enable IDM provisioning based on CP response.
Consider using the newerProvisioning.enabledinstead.
Default: FALSEauthLevel- Configure what QoA the CP can deliver per default, e.g. weak, normal or strong. See XTB Single Sign On (SSO, SLO) on how QoA is handled in the context of XTB.strongestPossibleAuthLevel- This attribute allows to map a QoA ofStrongestPossible
on the message level to a corresponding real QoA level to handle XTB Single Sign On (SSO, SLO) as this QoA value does not represent a real QoA.
Fallback: authLevelhomeName- The homeName is usually consumed from the home name attribute and identifies the CP attribute to consume the CP identity from instead of the subject name ID source.
If not specified or not provided by CP the SAML Response Subject NameID is sued.accountSource- The Account Source consumed by theIdmProvisioningServiceoriginalIssuer- The original issuer is by default consumed as is and not changed in the CP handling of XTB.
Fallback: idauthnRequestIssuerId- Override of the global issuer for this CP.responseIssuer- Override ID as expected issuer of CP response.
Can be set to decouple the CP response issuer from the ID. The ID of another CP is permitted here in which case the CP used for the request is picked.
Fallback: idssoUrl- SAML POST endpoint on the CP.certificates- You only need to declare SignerTruststore for SAML response verification. For signing the SignerKeystore declared on the RP side is (re-)used.securityPolicies- Global security policy overrides for this CP.oidc- OIDC client configuration to integrate CP/IDPsaml- SAML protocol configuration for this CP.wsTrust- WS-Trust protocol configuration for this CP.subjectNameMappings- Subject Name ID mappings for this CP.qoa- QoA configurations for this CP.provisioning- Provisioning configurations for this CP.attributesSelection- The filtering is done when the SAML response is received from the CP. This element therefore declares, which original issuer attributes are acceptable for propagation to RPs.scripts- Script hooks. Only scripts related to this CP are executed.cpTrustCredential-cpDecryptionCredentials-cpBackendClientCredential-cpBackendTrustCredentials-- Since:
- 1.9.0, 1.12.0, 1.12.0, 1.9.0, 1.14.0, 1.8.0, 1.9.0, 1.12.0
- See Also:
-
-
Method Details
-
getCpTrustCredential
-
getCpDecryptionCredentials
-
acUrlDisabled
public boolean acUrlDisabled() -
getOriginalIssuer
-
getResponseIssuer
-
getStrongestPossibleAuthLevelWithFallback
-
isDelegateOrigin
public boolean isDelegateOrigin() -
getAuthnRequestIssuerId
-
getShortType
- Specified by:
getShortTypein classCounterParty- Returns:
- type for logging etc. (RP/CP)
-
getProvision
-
getSingleOidcClient
-
builder
-
getId
Issuer ID of the claims provider that need to match ClaimsProvider entries in ClaimsProviderDefinitions for HRD display and have to be returned by CPs in SAML responses.
Notes:- CP IDs must be unique within the configuration of each environment
(
trustbroker-inventories/environment) - CP IDs may overlap with RP IDs.
- For SAML this ID is also used by the actual CP.
- For OIDC this just an internal ID.
- Specified by:
getIdin classCounterParty- Returns:
- ID of the counterparty
- CP IDs must be unique within the configuration of each environment
(
-
getEnabled
Flag to enable/disable this CP.
Default is true.- Specified by:
getEnabledin classCounterParty- Returns:
- enabled flag from config or overridden due to validation errors
-
getDisableACUrl
This flag allows to disable setting the AssertionConsumerServiceURL in the AuthnRequest towards the CP as some CPs do fail when it is set (correctly or incorrectly). -
getStatusPolicy
This status policy determines the handling of users that are not found in the IDM: BLOCK_UNKNOWN_USER, ALLOW_UNKNOWN_USER.- See Also:
-
getAuthLevel
Configure what QoA the CP can deliver per default, e.g. weak, normal or strong. See XTB Single Sign On (SSO, SLO) on how QoA is handled in the context of XTB. -
getStrongestPossibleAuthLevel
This attribute allows to map a QoA ofStrongestPossible
on the message level to a corresponding real QoA level to handle XTB Single Sign On (SSO, SLO) as this QoA value does not represent a real QoA.
Fallback: authLevel -
getHomeName
The homeName is usually consumed from the home name attribute and identifies the CP attribute to consume the CP identity from instead of the subject name ID source.
If not specified or not provided by CP the SAML Response Subject NameID is sued. -
getAccountSource
The Account Source consumed by theIdmProvisioningService- Since:
- 1.12.0
-
getAuthnRequestIssuerId
Override of the global issuer for this CP. -
getSsoUrl
SAML POST endpoint on the CP. -
getCertificates
You only need to declare SignerTruststore for SAML response verification. For signing the SignerKeystore declared on the RP side is (re-)used.- Specified by:
getCertificatesin classCounterParty- Returns:
- Certificate
- See Also:
-
getSecurityPolicies
Global security policy overrides for this CP.- Specified by:
getSecurityPoliciesin classCounterParty- Returns:
- Global security policy overrides for this party.
-
getOidc
OIDC client configuration to integrate CP/IDP- Specified by:
getOidcin classCounterParty- Returns:
- SAML configuration
- Since:
- 1.9.0
-
getSaml
SAML protocol configuration for this CP.- Specified by:
getSamlin classCounterParty- Returns:
- SAML configuration
-
getWsTrust
WS-Trust protocol configuration for this CP.- Specified by:
getWsTrustin classCounterParty- Returns:
- WS-Trust configuration
- Since:
- 1.14.0
-
getSubjectNameMappings
Subject Name ID mappings for this CP.- Specified by:
getSubjectNameMappingsin classCounterParty- Returns:
- Subject Name ID mappings for this party.
- Since:
- 1.8.0
-
getQoa
QoA configurations for this CP.- Specified by:
getQoain classCounterParty- Returns:
- Qoa configuration
- Since:
- 1.9.0
-
getProvisioning
Provisioning configurations for this CP.- Since:
- 1.12.0
-
getAttributesSelection
The filtering is done when the SAML response is received from the CP. This element therefore declares, which original issuer attributes are acceptable for propagation to RPs.- Specified by:
getAttributesSelectionin classCounterParty- Returns:
- Selection of attributes.
- See Also:
-
getScripts
Script hooks. Only scripts related to this CP are executed.- Specified by:
getScriptsin classCounterParty- Returns:
- Scripts
-
getCpBackendClientCredential
public org.opensaml.security.credential.Credential getCpBackendClientCredential() -
getCpBackendTrustCredentials
-
setId
Issuer ID of the claims provider that need to match ClaimsProvider entries in ClaimsProviderDefinitions for HRD display and have to be returned by CPs in SAML responses.
Notes:- CP IDs must be unique within the configuration of each environment
(
trustbroker-inventories/environment) - CP IDs may overlap with RP IDs.
- For SAML this ID is also used by the actual CP.
- For OIDC this just an internal ID.
- CP IDs must be unique within the configuration of each environment
(
-
setEnabled
Flag to enable/disable this CP.
Default is true.- Specified by:
setEnabledin classCounterParty- Parameters:
enabled- override enabled flag
-
setDisableACUrl
This flag allows to disable setting the AssertionConsumerServiceURL in the AuthnRequest towards the CP as some CPs do fail when it is set (correctly or incorrectly). -
setStatusPolicy
This status policy determines the handling of users that are not found in the IDM: BLOCK_UNKNOWN_USER, ALLOW_UNKNOWN_USER.- See Also:
-
setProvision
Enable IDM provisioning based on CP response.
Consider using the newerProvisioning.enabledinstead.
Default: FALSE- Since:
- 1.9.0
- See Also:
-
setAuthLevel
Configure what QoA the CP can deliver per default, e.g. weak, normal or strong. See XTB Single Sign On (SSO, SLO) on how QoA is handled in the context of XTB. -
setStrongestPossibleAuthLevel
This attribute allows to map a QoA ofStrongestPossible
on the message level to a corresponding real QoA level to handle XTB Single Sign On (SSO, SLO) as this QoA value does not represent a real QoA.
Fallback: authLevel -
setHomeName
The homeName is usually consumed from the home name attribute and identifies the CP attribute to consume the CP identity from instead of the subject name ID source.
If not specified or not provided by CP the SAML Response Subject NameID is sued. -
setAccountSource
The Account Source consumed by theIdmProvisioningService- Since:
- 1.12.0
-
setOriginalIssuer
The original issuer is by default consumed as is and not changed in the CP handling of XTB.
Fallback: id -
setAuthnRequestIssuerId
Override of the global issuer for this CP. -
setResponseIssuer
Override ID as expected issuer of CP response.
Can be set to decouple the CP response issuer from the ID. The ID of another CP is permitted here in which case the CP used for the request is picked.
Fallback: id- Since:
- 1.12.0
-
setSsoUrl
SAML POST endpoint on the CP. -
setCertificates
You only need to declare SignerTruststore for SAML response verification. For signing the SignerKeystore declared on the RP side is (re-)used.- See Also:
-
setSecurityPolicies
Global security policy overrides for this CP. -
setOidc
OIDC client configuration to integrate CP/IDP- Since:
- 1.9.0
-
setSaml
SAML protocol configuration for this CP. -
setWsTrust
WS-Trust protocol configuration for this CP.- Since:
- 1.14.0
-
setSubjectNameMappings
Subject Name ID mappings for this CP.- Since:
- 1.8.0
-
setQoa
QoA configurations for this CP.- Since:
- 1.9.0
-
setProvisioning
Provisioning configurations for this CP.- Since:
- 1.12.0
-
setAttributesSelection
The filtering is done when the SAML response is received from the CP. This element therefore declares, which original issuer attributes are acceptable for propagation to RPs.- See Also:
-
setScripts
Script hooks. Only scripts related to this CP are executed. -
setCpTrustCredential
public void setCpTrustCredential(List<org.opensaml.security.credential.Credential> cpTrustCredential) -
setCpDecryptionCredentials
public void setCpDecryptionCredentials(List<org.opensaml.security.credential.Credential> cpDecryptionCredentials) -
setCpBackendClientCredential
public void setCpBackendClientCredential(org.opensaml.security.credential.Credential cpBackendClientCredential) -
setCpBackendTrustCredentials
public void setCpBackendTrustCredentials(List<org.opensaml.security.credential.Credential> cpBackendTrustCredentials) -
toString
- Overrides:
toStringin classCounterParty
-
equals
- Overrides:
equalsin classCounterParty
-
canEqual
- Overrides:
canEqualin classCounterParty
-
hashCode
public int hashCode()- Overrides:
hashCodein classCounterParty
-