SAML module does not redirect to Custom URL

1
Hello! I have the SAML module implemented in a Mendix 6.10.12 app. When I am testing this in the cloud node the user is redirected to the actual URL vs. the Custom domain.  For example: Let's say my Mendix app Test url is app-test.mendixcloud.com and I have a custom domain called test.myapp.com. I have the SAML module configured (and configured at the IDP) that my app is at test.myapp.com and the SSO page is at test.myapp.com/SSO/. When the user logs in, it gets redirected to app-test.mendixcloud.com/index.html instead of the custom domain, and the user gets put back on the landing page (where I have the Sign in button).  I'd like it to redirect to the custom domain. When I edit the sso landing page constant, it doesn't like a full URL, it still appends whatever is in there to the end of the Mendix determined app URL. Has anyone experienced this before or is there something I am missing?!
asked
1 answers
11

with the default module you can only fix this by setting your ApplicationRootUrl in your Custom Settings:

 

If you don't want to change that url (for whatever reason) then you can add these constants to the module CustomURL (default sting value undefined) and EnableCustomURL (boolean) and replace this function in the java code in file  ..\javasource\saml20\implementation\common\Constants.java :

public static final String getSP_URI() {
		if ( SP_CONSUMER_URI == null ) {
			String customURL = saml20.proxies.constants.Constants.getCustomURL();
			boolean enableCustomURL = saml20.proxies.constants.Constants.getEnableCustomURL();
			if (enableCustomURL)
			{
				String appURL = (customURL != null && !customURL.toLowerCase().equals("undefined")) ? customURL : Core.getConfiguration().getApplicationRootUrl();
				SP_CONSUMER_URI = appURL;
			}
			else
			{
				SP_CONSUMER_URI = Core.getConfiguration().getApplicationRootUrl();
			}

			if ( !SP_CONSUMER_URI.endsWith("/") )
				SP_CONSUMER_URI += "/";
		}

		return SP_CONSUMER_URI;
	}

this will set the correct URL in the return url in the SAML request message. Beware when upgrading the SAML module!

answered