Class WsTrustIssueValidator

java.lang.Object
swiss.trustbroker.wstrust.validator.WsTrustBaseValidator
swiss.trustbroker.wstrust.validator.WsTrustIssueValidator
All Implemented Interfaces:
WsTrustValidator

@Component public class WsTrustIssueValidator extends WsTrustBaseValidator
Validator for WS-Trust ISSUE requests.
  • Constructor Details

    • WsTrustIssueValidator

      public WsTrustIssueValidator(swiss.trustbroker.config.TrustBrokerProperties trustBrokerProperties, swiss.trustbroker.homerealmdiscovery.service.RelyingPartySetupService relyingPartySetupService, swiss.trustbroker.script.service.ScriptService scriptService, Clock clock)
  • Method Details

    • applies

      public boolean applies(org.opensaml.soap.wstrust.RequestType requestType)
      Description copied from interface: WsTrustValidator
      Check if this validator applies to the given type.
      Parameters:
      requestType -
      Returns:
    • getBinding

      protected swiss.trustbroker.federation.xmlconfig.WsTrustBinding getBinding()
      Specified by:
      getBinding in class WsTrustBaseValidator
      Returns:
      binding supported by this validator.
    • validate

      public WsTrustValidationResult validate(org.opensaml.soap.wstrust.RequestSecurityToken requestSecurityToken, SoapMessageHeader requestHeader)
      Description copied from interface: WsTrustValidator
      Perform validation of the RST request.
      Parameters:
      requestSecurityToken - request
      requestHeader - stored data from header (not null)
      Returns:
      Processed assertion (i.e. headerAssertion or one from the body) plus additional parameters.
    • correctAssertionForSignatureValidation

      protected boolean correctAssertionForSignatureValidation(List<org.opensaml.saml.saml2.core.Assertion> singletonListWithAssertion, org.opensaml.soap.wstrust.RequestSecurityToken request, swiss.trustbroker.federation.xmlconfig.ClaimsParty claimsParty, swiss.trustbroker.federation.xmlconfig.RelyingParty relyingParty)
      Description copied from class: WsTrustBaseValidator
      Transitional: Called if signature validation fails on the Assertion.
      Overrides:
      correctAssertionForSignatureValidation in class WsTrustBaseValidator
      Parameters:
      singletonListWithAssertion - Modifiable list with exactly one assertion that can be modified or replaced. If the list is empty at the end, the failing validation is accepted - unless a valid signature is required. Else the validation is retried with the assertion. May throw RequestDeniedException.
      request - passed down from validateAssertion
      claimsParty - passed down from validateAssertion
      relyingParty - passed down from validateAssertion
      Returns:
      false no correction performed (default), true correction performed, check singletonListWithAssertion again