#request.SAML.baseUrl#metadata.cfm logout64 = (deflate2base64(logoutResponseXml)); logoutUrl = urlEncodeRfc2396(logout64); logoutSigAlgUrl= urlEncodeRfc2396('http://www.w3.org/2001/04/xmldsig-more##rsa-sha256'); if (len(target_page)) { //empty RelayState would not be accepted relayStateX = "&RelayState=#urlEncodeRfc2396(target_page)#"; } else { relayStateX = ""; } logoutRequest2Sign="SAMLRequest=#logoutUrl##relayStateX#&SigAlg=#logoutSigAlgUrl#"; //order matters signedBytesUrl = urlEncodeRfc2396(sign2base64(logoutRequest2Sign, privateKey, 'SHA256withRSA')); logoutRequest="#logoutRequest2Sign#&Signature=#signedBytesUrl#"; #request.SAML.baseUrl#metadata.cfm #SAML_NameID# #SAML_SessionIndex# logout64 = (deflate2base64(logoutRequestXml)); logoutUrl = urlEncodeRfc2396(logout64); logoutSigAlgUrl= urlEncodeRfc2396('http://www.w3.org/2001/04/xmldsig-more##rsa-sha256'); if (len(target_page)) { //empty RelayState would not be accepted relayStateX = "&RelayState=#urlEncodeRfc2396(target_page)#"; } else { relayStateX = ""; } logoutRequest2Sign="SAMLRequest=#logoutUrl##relayStateX#&SigAlg=#logoutSigAlgUrl#"; //order matters signedBytesUrl = urlEncodeRfc2396(sign2base64(logoutRequest2Sign,privateKey,'SHA256withRSA')); logoutRequest="#logoutRequest2Sign#&Signature=#signedBytesUrl#";