Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Ability to manage users and groups
  • Login, forgot password, password reset
  • Signup and approval workflow
  • Oauth support
  • Optional: Shibboleth support

SSO Implementations

ServiceLicensePlatformNotes
Central Authentication ServiceApache 2.0Java 
Gluu Java, in theoryInstalled on Centos7
IdentityServerApacheMicrosoft 
Shibboleth   
WSO2   

Central Authentication Service

  • SSO only (no user management)
  • No oauth support

Gluu

  • So far, haven't been able to get it running

Shibboleth

  • SSO only (no user management)
  • Requires LDAP or other system

WSO2

WSO2 seems to be the most viable solution for hosting our own IdP. This assumes that we cannot simply rely on external solutions, such as Github.

  • Ability to manage users and groups: supported
  • Sign-up: supported, requires customization (look and feel)
  • Login: supported, requires customization (look and feel)
  • Forgot/reset password: requires custom UI development (API available)
  • Account approval: requires custom workflow
  • Oauth: supported

 

Other options

Sign up with Github

Simply allow the user to sign up with their Oauth account.  This still requires an account approval workflow, but without the need to host our own IdP. 

Steps:

  1. Sign-up with Github
  2. User is prompted to authorize beta.ndslabs.org
  3. Once authorized, an account is created but in an unapproved state.
  4. An email is sent to ndslabs support for authorization
  5. We authorize/deny the user