1

I have a Sitecore multi-site solution set up to use a third party service to authenticate users, these sites are mostly divisions under the main site, but each one has its own host name and site definition and my client is asking if there is a way that a user can stay authenticated while navigating through these sub-sites.

Is there a way to share the session variable between these sites?

  • Any of these answers helping you @Muradious? To be fair, your question is very open-ended. – Mark Cassidy Jul 6 '17 at 16:16
  • @MarkCassidy I'm running them both by the client to see which way they would prefer to go, I'm not that experienced in authentication matters to be honest so I have to check out before going ahead with them – Muradious Jul 6 '17 at 23:39
5

You can use SSO software to treat all of the sites as part of a single 'authentication' realm. That way you log in once and then each site pings back to your SSO software to get the token or authentication confirmation.

Shibboleth

One example of SSO Software is Shibboleth. It acts as a central gatekeeper and you can set up Service Providers on your server to protect your site and send it to the Identity Provider. Some details on using Shibboleth with Sitecore are here: http://www.nonlinearcreations.com/Digital/how-we-think/articles/2017/04/Using-Shibboleth-SSO-for-a-Sitecore-Intranet-Experience.aspx

Owin/SAML federated authentication

Another example would be using something like Owin for federated authentication. Bas Litjen has a module for federated authentication which can consume authentication tokens and log users in: https://github.com/BasLijten/SitecoreFederatedLogin.

More details are also available on this SSE post: Does Sitecore support SAML?

Active Directory module

Another option is using Sitecore's active directory module for authentication. There are some details on using it for SSO in this SSE post: Active Directory and SSO in Sitecore 8.1

Gigya (credit to @Mohit Dharmadhikari)

Gigya is one of the top Identity as a service (IDaaS) platform. It has loads of other offering as well. There's a Gigya Connector for Sitecore available on the Sitecore Marketplace.

1

You need to pass the credentials between the different subsites (when they are on different domains). You can do that by having specific landing pages between sites, to do the work (https://stackoverflow.com/questions/351873/passing-credentials-between-sites).

Another solution could be to have user id token in each websites cookie and automatically log in when referrer is a known site (not so pretty).

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.