Class SamlUtil

java.lang.Object
swiss.trustbroker.common.saml.util.SamlUtil

public class SamlUtil extends Object
  • Field Details

  • Method Details

    • prepareSamlObject

      public static void prepareSamlObject(org.opensaml.xmlsec.signature.SignableXMLObject object, String c14nAlgo, org.opensaml.xmlsec.signature.Signature signature, String skinnyAssertionNamespaces)
    • signSamlObject

      public static void signSamlObject(org.opensaml.xmlsec.signature.SignableXMLObject object, org.opensaml.xmlsec.signature.Signature signature)
    • signSamlObject

      public static void signSamlObject(org.opensaml.xmlsec.signature.SignableXMLObject object, org.opensaml.xmlsec.signature.Signature signature, String skinnyAssertionNamespaces)
    • getOriginalIssuerFromAttribute

      public static String getOriginalIssuerFromAttribute(org.opensaml.saml.saml2.core.Attribute attribute)
    • getAttributeValue

      public static String getAttributeValue(org.opensaml.saml.saml2.core.Attribute attribute)
    • getAttributeValues

      public static List<String> getAttributeValues(org.opensaml.saml.saml2.core.Attribute attribute)
    • isSignatureValid

      public static boolean isSignatureValid(org.opensaml.xmlsec.signature.Signature signature, List<org.opensaml.security.credential.Credential> credentials, List<String> allowedSignatureAlgorithms, boolean enforceAllowedSignatureAlgorithms)
    • isRedirectSignatureValid

      public static boolean isRedirectSignatureValid(List<org.opensaml.security.credential.Credential> credentials, List<String> allowedSignatureAlgorithms, boolean enforceAllowedSignatureAlgorithms, String signatureAlgorithm, String queryString, byte[] signatureBytes, boolean redirectBindingSignatureWarning)
    • validateRedirectSignature

      public static boolean validateRedirectSignature(org.opensaml.security.credential.Credential credential, String signatureAlgorithm, byte[] queryStringBytes, byte[] signatureBytes, boolean redirectBindingSignatureWarning)
    • buildRedirectBindingSignature

      public static byte[] buildRedirectBindingSignature(org.opensaml.security.credential.Credential credential, String signatureAlgorithm, byte[] queryStringBytes)
    • encode

      public static String encode(org.opensaml.core.xml.XMLObject message)
    • marshallMessage

      public static Element marshallMessage(org.opensaml.core.xml.XMLObject message) throws org.opensaml.messaging.encoder.MessageEncodingException
      Throws:
      org.opensaml.messaging.encoder.MessageEncodingException
    • getAssertionNameIDFormat

      public static String getAssertionNameIDFormat(org.opensaml.saml.saml2.core.Assertion assertion)
    • generateSkiKeyInfo

      public static org.opensaml.xmlsec.signature.KeyInfo generateSkiKeyInfo(org.opensaml.security.credential.Credential credential) throws org.opensaml.security.SecurityException
      Throws:
      org.opensaml.security.SecurityException
    • isSignatureFromCredential

      public static boolean isSignatureFromCredential(org.opensaml.xmlsec.signature.Signature signature, org.opensaml.security.credential.Credential credential)
    • getKeyInfoHintFromCredential

      public static String getKeyInfoHintFromCredential(org.opensaml.security.credential.Credential credential)
    • credentialsToKeyInfo

      public static String credentialsToKeyInfo(List<org.opensaml.security.credential.Credential> credentials)
    • getKeyInfoHintFromSignature

      public static String getKeyInfoHintFromSignature(org.opensaml.xmlsec.signature.Signature signature)
    • getKeyInfoHintFromCertificate

      public static String getKeyInfoHintFromCertificate(X509Certificate certificate)
    • getSkiOid

      public static byte[] getSkiOid(X509Certificate certificate)
    • getSkiOidString

      public static String getSkiOidString(X509Certificate certificate)
    • getHexString

      public static String getHexString(byte[] input)
    • generateRelayState

      public static String generateRelayState()
    • getValuesFromAttribute

      public static List<String> getValuesFromAttribute(org.opensaml.saml.saml2.core.Attribute attribute)
    • getValuesForAttribute

      public static List<String> getValuesForAttribute(org.opensaml.saml.saml2.core.Assertion assertion, String attributeName)
    • validateSessionId

      public static boolean validateSessionId(String id, String usage)
    • isValidNcName

      public static boolean isValidNcName(String value)
    • prependPrefixToRelayState

      public static String prependPrefixToRelayState(String relayState)
    • generateRelayState

      public static String generateRelayState(String identifier)
    • useRelayStateAsSessionId

      public static String useRelayStateAsSessionId(String relaySate)
    • setOriginalIssuerIfMissing

      public static void setOriginalIssuerIfMissing(org.opensaml.saml.saml2.core.Attribute attribute, String originalIssuer)
    • setOriginalIssuer

      public static void setOriginalIssuer(org.opensaml.saml.saml2.core.Attribute attribute, String originalIssuer)
    • removeOriginalIssuer

      public static void removeOriginalIssuer(org.opensaml.saml.saml2.core.Attribute attribute)
    • hasOriginalIssuer

      public static boolean hasOriginalIssuer(org.opensaml.saml.saml2.core.Attribute attribute)
    • getResponseAssertions

      public static List<org.opensaml.saml.saml2.core.Assertion> getResponseAssertions(org.opensaml.saml.saml2.core.Response response, List<org.opensaml.security.credential.Credential> decryptionCredentials, boolean requireEncryptedAssertion)
    • getAudiences

      public static List<String> getAudiences(org.opensaml.saml.saml2.core.Assertion assertion)
    • extractAttributesFromAssertion

      public static Map<String,Object> extractAttributesFromAssertion(org.opensaml.saml.saml2.core.Assertion assertion)