Class SAMLClient


  • public class SAMLClient
    extends Object
    The class SAMLClient provides interfaces to do Web and POST profile as specified by SAML specification. It also provides methods to get Assertions based on Artifacts.
    • Constructor Detail

      • SAMLClient

        public SAMLClient()
    • Method Detail

      • doWebArtifact

        public static void doWebArtifact​(jakarta.servlet.http.HttpServletRequest request,
                                         jakarta.servlet.http.HttpServletResponse response,
                                         String target)
                                  throws IOException,
                                         SAMLException
        This method is designed to do the SAML web-browser profile with Artifact. Once the browser (user) authenticated to OpenAM, it can call this method to complete the single sign on to the target host and be redirected to the specified target site.
        Parameters:
        request - HTTP Servlet Request
        response - HTTP Servlet Response
        target - A String representing the target URL
        Throws:
        IOException - if an input or output exception occurs when redirecting to service URL
        SAMLException - if SAML error occurs during the process
      • doWebPOST

        public static void doWebPOST​(jakarta.servlet.http.HttpServletRequest request,
                                     jakarta.servlet.http.HttpServletResponse response,
                                     String target)
                              throws IOException,
                                     SAMLException
        This method is designed to do the SAML web-browser POST profile. Once the browser (user) authenticated to OpenAM, it can call this method to complete the single sign on to the target host and be redirected to the target site.
        Parameters:
        request - HTTP Servlet Request
        response - HTTP Servlet Response
        target - A String representing the target URL
        Throws:
        IOException - if an input or output exception occurs when redirecting to service URL
        SAMLException - if SAML error occurs during the process
      • getAssertionByArtifact

        public static Assertion getAssertionByArtifact​(AssertionArtifact artifact)
                                                throws IOException,
                                                       SAMLException
        This method returns the Assertion for the corresponding artifact. It sends an ArtifactQuery SAML message to the destination identified by the source ID in the artifact and returns the Assertion contained in the SAML response message.
        Parameters:
        artifact - An AssertionArtifact representing the artifact
        Returns:
        An Assertion corresponding to the artifact
        Throws:
        IOException - if an input or output exception occurs when connecting to SAML service URL
        SAMLException - if SAML error occurs during the process
      • getAssertionByArtifact

        public static Assertion getAssertionByArtifact​(String artifact)
                                                throws IOException,
                                                       SAMLException
        This method returns the Assertion for the corresponding artifact. It sends an ArtifactQuery SAML message to the destination identified by the source ID in the artifact and returns the Assertion contained in the SAML response message.
        Parameters:
        artifact - A String representing the artifact
        Returns:
        An Assertion corresponding to the artifact
        Throws:
        IOException - if an input or output exception occurs when connecting to SAML service URL
        SAMLException - if SAML error occurs during the process
      • setLocalFlag

        public static boolean setLocalFlag​(URL url)
      • artifactQueryHandler

        public static List artifactQueryHandler​(String[] arti,
                                                String connecto)
                                         throws IOException,
                                                SAMLException
        This method is designed to get a list of assertion based on the input AssertionArtifact(s).
        Parameters:
        arti - An array of String
        Returns:
        a List object representing a list of Assertions
        Throws:
        IOException - if an input or output exception occurs when connecting to SAML service URL
        SAMLException - if SAML error occurs during the process