Class RedirectBindingUtil
- java.lang.Object
-
- org.keycloak.saml.processing.web.util.RedirectBindingUtil
-
public class RedirectBindingUtil extends Object
Utility class for SAML HTTP/Redirect binding- Since:
- Jan 14, 2009
- Author:
- [email protected]
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RedirectBindingUtil.RedirectBindingUtilDestHolder
A Destination holder that holds the destination host url and the destination query string
-
Constructor Summary
Constructors Constructor Description RedirectBindingUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static InputStream
base64DeflateDecode(String encodedString)
Base64 decode followed by Deflate decodingstatic String
base64Encode(byte[] stringToEncode)
On the byte array, apply base64 encodingstatic String
base64URLEncode(byte[] stringToEncode)
On the byte array, apply base64 encoding following by URL encodingstatic String
deflateBase64Encode(byte[] stringToEncode)
Apply deflate compression followed by base64 encodingstatic String
deflateBase64URLEncode(byte[] stringToEncode)
Apply deflate compression followed by base64 encoding and URL encodingstatic String
deflateBase64URLEncode(String stringToEncode)
Apply deflate compression followed by base64 encoding and URL encodingstatic String
getDestinationQueryString(String urlEncodedRequest, String urlEncodedRelayState, boolean sendRequest)
Get the Query String for the destination urlstatic String
getDestinationURL(RedirectBindingUtil.RedirectBindingUtilDestHolder holder)
Get the destination urlstatic byte[]
urlBase64Decode(String encodedString)
On the byte array, apply URL decoding followed by base64 decodingstatic InputStream
urlBase64DeflateDecode(String encodedString)
Apply URL decoding, followed by base64 decoding followed by deflate decompressionstatic String
urlDecode(String str)
URL decode the stringstatic String
urlEncode(String str)
URL encode the string
-
-
-
Method Detail
-
urlEncode
public static String urlEncode(String str) throws IOException
URL encode the string- Parameters:
str
-- Returns:
- Throws:
IOException
-
urlDecode
public static String urlDecode(String str) throws IOException
URL decode the string- Parameters:
str
-- Returns:
- Throws:
IOException
-
base64Encode
public static String base64Encode(byte[] stringToEncode) throws IOException
On the byte array, apply base64 encoding- Parameters:
stringToEncode
-- Returns:
- Throws:
IOException
-
base64URLEncode
public static String base64URLEncode(byte[] stringToEncode) throws IOException
On the byte array, apply base64 encoding following by URL encoding- Parameters:
stringToEncode
-- Returns:
- Throws:
IOException
-
urlBase64Decode
public static byte[] urlBase64Decode(String encodedString) throws IOException
On the byte array, apply URL decoding followed by base64 decoding- Parameters:
encodedString
-- Returns:
- Throws:
IOException
-
deflateBase64URLEncode
public static String deflateBase64URLEncode(String stringToEncode) throws IOException
Apply deflate compression followed by base64 encoding and URL encoding- Parameters:
stringToEncode
-- Returns:
- Throws:
IOException
-
deflateBase64URLEncode
public static String deflateBase64URLEncode(byte[] stringToEncode) throws IOException
Apply deflate compression followed by base64 encoding and URL encoding- Parameters:
stringToEncode
-- Returns:
- Throws:
IOException
-
deflateBase64Encode
public static String deflateBase64Encode(byte[] stringToEncode) throws IOException
Apply deflate compression followed by base64 encoding- Parameters:
stringToEncode
-- Returns:
- Throws:
IOException
-
urlBase64DeflateDecode
public static InputStream urlBase64DeflateDecode(String encodedString) throws IOException
Apply URL decoding, followed by base64 decoding followed by deflate decompression- Parameters:
encodedString
-- Returns:
- Throws:
IOException
-
base64DeflateDecode
public static InputStream base64DeflateDecode(String encodedString) throws IOException
Base64 decode followed by Deflate decoding- Parameters:
encodedString
-- Returns:
- Throws:
IOException
-
getDestinationQueryString
public static String getDestinationQueryString(String urlEncodedRequest, String urlEncodedRelayState, boolean sendRequest)
Get the Query String for the destination url- Parameters:
urlEncodedRequest
-urlEncodedRelayState
-sendRequest
- either going to be saml request or response- Returns:
-
getDestinationURL
public static String getDestinationURL(RedirectBindingUtil.RedirectBindingUtilDestHolder holder) throws IOException
Get the destination url- Parameters:
holder
-- Returns:
- Throws:
IOException
-
-