SSO

Single Sign-On

Sprig supports integration with three different Single Sign-On (SSO) services:

  1. KeyCloak
  2. Okta
  3. OneLogin

Following will be a description of how to configure Sprig with those services.

KeyCloak

1) Contact [email protected] to claim the email domain(s) that your SSO users will use to sign in.

2) Log into your Sprig account and navigate to Settings > Single Sign-On.

3) Select the SSO Enabled option, and click Save.

4) An Important Values section should appear. Copy the value of the Entity URI field into the Issuer URL field in the Your Identity Provider, and click Save button for both sections. Take note of both values provided by the Important Values section, as you will use it in your KeyCloak client configuration in the next step.

5) Log into your KeyCloak administration console. Navigate to the Clients page. Click Create and an Add Client page should appear. In the Add Client page enter the Entity URI from Step 4 into the Client ID field, and select SAML for the Client Protocol. Click Save.

6) A new configuration page for the newly created Sprig client should appear. Click on the Settings tab. Switch the Enabled and Sign Document toggles to the ON position. All other toggles should be OFF. Select RSA_256 for the Signature Algorithm, and enter the ACS URL from Step 4 into the Valid Redirect URIs field. The values of all other fields can be as the default value or blank. Click the Save button.

7) Click on the Mappers tab for the Sprig client you created. Add two mappers that will evaluate the values that will be used by the Sprig application for each user’s name and role. The SAML attribute names must be name and role, respectively. Name values must be less than 255 characters, and valid values for role are admin, developer, or viewer. Sprig roles are described here.

8) Click on the Realm Settings tab on the left. Click on the Keys tab in the Realm page under which your Sprig client was created. On that page, under the Active tab you should see a set of rows for each key. Find the one that has type RSA and click on the Certificate button on the right side of the row. A long string value should appear. Enter this value into the X.509 Certificate field in the Your Identity Provider section of the Sprig SSO Settings Page. Click Save.

Users properly configured to use the Sprig client you configured in KeyCloak should now be able to sign in using the Sprig SSO login page.

Okta

1) Contact [email protected] or [email protected] to claim the email domain(s) that your SSO users will use to sign in.

2) Log into your Sprig account and navigate to the Settings > Single Sign-On.

3) Select SSO Enabled and click Save.

4) An Important Values section should appear. Take note of the values provided. You will use them to configure your Okta integration in Step 10.

5) Log into your Okta account and go to the Admin section. Make sure you are using the Classic UI. Then navigate to Applications.

6) Click on Add Application.

7) Click the Create New App button on the right.

8) A modal window should appear. Select Web for the platform and SAML 2.0 for the sign-on method. Then click Create.

9) Enter in the name you want for your Sprig application integration and click Next.

10) The next screen is where you will input the SAML settings. Use the values you were provided by the Sprig SSO settings page in Step 4 to enter the ACS URL into the Single sign-on URL and the Entity URI into the Audience URI.

Keep the Use this for Recipient URL and Destination URL option selected, and leave the Allow this app to request other SSO URLs option blank.

11) Select the EmailAddress option for the Name ID format field and Email for Application username.

12) In the attributes section add an attribute so that there are two. Enter “name” and “role” for the Name fields. Leave the Name format fields as “Unspecified”. In the Value fields enter Okta Expression Language expressions that will provide the name and role for your Sprig users. The “role” field needs to evaluate to one of: admin , editor , developer , or viewer . Sprig roles are described here. If you are not sure what to enter here you can add String.join(" ", user.firstName, user.lastName) for “name” and admin for “role”

13) Leave the Group Attribute Statements section blank. Scroll down to the bottom of the page and click Next.

14) Fill out the necessary fields in the Feedback section and click Finish.

15) You should now be taken to your new app’s integration page. Click Sign On and then click View Setup Instructions.

16) A new page with configuration values will appear. You will be using these values to configure UseLeap SSO in the next step.

17) Navigate to the Sprig SSO Settings Page. Copy the values from the previous step into the corresponding fields in the “Your Identity Provider” section

  • Identity Provider Single Sign-On URL → Entry Point URL
  • Identity Provider Issuer → Issuer URL
  • X.509 Certificate → X.509 Certificate

18) Click the Save button in the Your Identity Provider section. Users that are assigned to the Okta app integration you created should now be able to sign up using the Sign in with SSO link on the Sprig login page. You now can assign users in the Assignments tab of your Okta application integration.

****

OneLogin

1) Contact [email protected] or [email protected] to claim the email domain(s) that your SSO users will use to sign in.

2) Log in to UserLeap and go to Settings>Single Sign On.

3)Select SSO Enabled option, and click Save.

4) An Important Values section will appear. Take note of the values provided. You will use them to configure your OneLogin integration in step 8.

5) Log in to your OneLogin account and go to the Administration section. Navigate to the Applications page.

6) Click the Add App on the right side of the page. In the search field, enter Saml Test Connector. The first result should be the correct connector provided by OneLogin Inc. Select that result to begin configuring the integration:

7 )In the Display Name field, enter a name and click Save.

8 ) Click Configuration. Use the Important Values you were provided in step 4 to cut and paste the Entity URI into the Audience (EntityID) field, and the ACS URL into both the ACS (Consumer) URL Validator field and the ACS (Consumer) field.

9 ) Click Parameters. Click on to add a parameter.

10 ) Enter name in the Field name field. Select the Include in SAML assertion option. Click Save.

11 ) In the Value drop-down list select - Macro - . Then enter {firstname} {lastname} in the field. More information on macros can be found here.

12 ) Click again on Parameters. Click on to add another parameter.

13 ) Enter role in the Field name field. Select the Include in SAML assertion option. Click Save.

14 ) In the Value drop-down list select - Macro - . Either enter {admin} , {developer} , or {viewer} in the field. UserLeap roles are described here. Roles can be configured on a per-user basis using user attribute macros. If you don’t have the appropriate attribute configured for users yet, you can choose “- Macro -” again and enter {admin}, and all assigned users will receive “admin” permissions.

15 ) You will configure the SAML settings. Click on the SSO tab. In the SAML Signature Algorithm dropdown, select SHA-256.

16 ) Navigate to the UserLeap's Settings>Single Sign-On. Copy the values from the SSO tab in the previous step into the corresponding fields in the Your Identity Provider section:

  • Issuer URL → Issuer URL
  • SAML 2.0 Endpoint → Entry Point URL

17 ) Now in the OneLogin SSO tab, click View Details link under the X.509 Certificate field. A new page will appear. Copy the text inside the X.509 Certificate field and paste it into the X.509 Certificate field in UserLeap's Settings>Single Sign-On. Click “Save”.

18 ) Users that are assigned to the OneLogin UserLeap application integration will now be able to sign in using the UserLeap SSO login.