0
votes

In WSO2 Enterprise Store 1.0.0 there is a mix about the hostname used to make connections.

You can set HostName and MgtHostName in carbon.xml. But there are files with fixed names, like

  • sso-idp-config.xml: (AssertionConsumerService) https://localhost:9443/store/acs
  • jaggeryapps\store\controllers\ login.jag: (postUrl) "https://" + process.getProperty('carbon.local.ip') + ":" ...

localhost breaks every remote connection. IP address breaks SAML authentication and is not consistent with 3rd party certificates.

Is there an easy way to set the hostname all over the ES?

2

2 Answers

1
votes

I tried this scenario only by updating AssertionConsumerService within sso-idp-config.xml and it works for me.

So you have to only update AssertionConsumerService within sso-idp-config.xml.

0
votes

To work properly, the full list of files I had to modify is:

  • repository\conf\sso-idp-config.xml
  • repository\deployment\server\jaggeryapps\publisher\controllers\login.jag
  • repository\deployment\server\jaggeryapps\publisher\controllers\logout.jag
  • repository\deployment\server\jaggeryapps\social\controllers\login.jag
  • repository\deployment\server\jaggeryapps\social\controllers\logout.jag
  • repository\deployment\server\jaggeryapps\store\controllers\login.jag
  • repository\deployment\server\jaggeryapps\store\controllers\logout.jag
  • repository\deployment\server\jaggeryapps\store\themes\store\js\asset.js

login/logout files use the IP address (a bad choice when working with third-party certificates. It also breaks SAML authentication).

I lost a lot of time locating files with IP and localhost references. I think it should be reviewed and documented in future versions of the product.