Using the SSO Login Functionality

In order to login using the SSO feature of the Community Engine, you need to configure VCE to use the com.escenic.community.actions.SSOLogin action class.

<form-bean
  name="signinForm"
  type="com.escenic.community.forms.SSOSignInForm" />
<action
  path="/auth/login"
  name="signinForm"
  scope="request"
  input="/index.jsp"
  type="com.escenic.community.actions.SSOLogin">
  <forward name="success"
           path="/auth/community/login.do" />
</action>

<action
  path="/auth/community/login"
  scope="request"
  name="signinForm"
  parameter="userProfile"
  type="com.ndc.usercontent.struts.actions.login.Login">
  <forward name="error" path="/" />
</action>

The com.escenic.community.forms.SSOSignInForm has the following properties:

  • providerId : the configured SSO provider ID. Note that the ID of the provider can be retrieved using the com.ndc.community.api.CommunityPlugin#getSSOProviderList or com.ndc.community.api.CommunityPlugin#getSSOProvider method. Please see the JavaDoc for more information. Note that, if the providerId given is -1, the SSOLogin will proceed with the Community Engine user authentication.

  • userName : the username of a VCE user. This property is not required when a SSO provider is used (i.e provider id is not -1). It is only for logging in using regular Community Engine user.

  • password : the password of the VCE user identified by the userName property mentioned above. This property is not required when a SSO provider is used (i.e provider id is not -1). It is only for logging in using regular Community Engine user.

  • openid_identifier : the URL or XRI chosen by the user as their OpenID identifier. It is not required when openIDProviderIdentifier is configured for the OpenIDProvider.

  • successUrl : the URL where the user should be redirected to if the user successfully signs in.

  • errorUrl : the URL where the user should be redirected to if the user can not sign in successfully.

Please note that, if the providerId is provided (i.e. if the user is using SSO), the other properties are ignored. Only if the providerId is set to -1, the rest of the properties are used by VCE.