- This document is intended to be paired with Cloud Streaming - SSO - SAML Configuration for users with Google Admin Console to manage their users.
You must start an SSO Configuration on your Cloud Portal Admin to continue below. It is best to configure both ends of this SAML handshake together with 2 open windows or tabs on your browser.
Step 1 - Begin Google SAML Application Configuration
- Sign into the Google Admin Console (admin.google.com)
- Navigate to Apps / Web and mobile apps
- Click Add App and select Add custom SAML app in the drop down
- In the App details screen. add Digital Campus or Swank Cloud Streaming in the App name field
- In the Google Identity Provider Details screen, under Option 1: Download IdP metadata click Download Metadata and save for a later step, then click Continue
Step 2 - Configure Streaming Server SAML Authentication
- In a separate tab/window, login to your Swank Streaming portal with your registered Admin account.
- Select SSO Configuration from the left menu.
- Review the list of SSO Identity Providers configured for your portal
-
Legacy Providers: If you've previously configured SSO via SAML or Google OAuth, you'll find their configuration listed at the bottom here.
- Note: You cannot "upgrade" your existing SAML configuration to our new Identity Service host - you must create a new SAML configuration.
- The legacy configurations are deactivated automatically when a new SSO Identity Provider Configuration is activated. You can "fallback" to the legacy provider by deactivating the new provider(s).
-
SSO Configurations: At the top of the page, see the list of available providers. You can:
- Activate or Deactivate existing configurations via the Active toggle.
- Edit or Delete existing configurations via button actions
- Add new SSO Identity Providers via the button at the Top. (We'll continue this guide from this route)
- Click Add Configuration
- Choose the Provider Type of SAML
- Enter a Display Name - This displays on the list of SSO Configurations as well as the button added to the Login page. (Suggested: Google SAML)
- Select Upload SAML Metadata File and select the file downloaded in step 1.1.5
- Toggle Require Valid Metadata to the off position.
- Click the Save button to generate your SAML configuration.
- Complete the SAML handshake:
- These values will be presented for you to copy and enter back into your SAML Identity Provider's configuration.
- SP EntityID - Required
- SP Metadata URL - Optional (Google does not support)
- Callback Path (ACS Endpoint) - Required
- Once these values are saved at the Identity Provider end, the SAML handshake between your Portal and your Identity Provider should be complete.
- When copying and pasting this info, make sure there is no trailing "/" or spaces on the G suite side. This will result in errors. You must include the whole URL including the unique IDs redacted above
- These values will be presented for you to copy and enter back into your SAML Identity Provider's configuration.
Step 3 - Complete Google SAML Application Configuration
- Copy Callback Path (ACS Endpoint) to the ACS URL field in your Google SAML App configuration
- Copy SP EntityID to the Entity ID field in your Google SAML App configuration
- Name ID format = EMAIL
- Name ID = Basic Information > Primary email
-
Start URL and Signed response checkbox will not be required
- Click Continue
- On the Attributes Screen click ADD MAPPING and enter the details below. Renaming the attributes to match standard expected values for the portal:
- Google Directory attributes: --> App attributes:
-
Required
- First Name --> given_name
- Last Name --> family_name
- Primary email --> email
-
Suggested methods for distinguishing Instructors vs Students (Provide one or more options)
- Organizational Unit Path --> ou
- Department --> department
-
Group membership (optional)
- Add groups that will map to an App attribute of Groups
- Click Finish
- User access should be enabled for the appropriate organizational units.
- Access can be modified under Apps > Web and mobile apps
- Click on the Swank SAML App you created to open for editing.
- Expand the user access section by clicking the expansion icon in the upper right corner.
- You can turn on for everyone to test initially and if desired you can scale back access later.
Step 4
Role Mapping, User Authorization, and Permission Elevation
All successful authentications will be authorized at the "Basic" or "User" account levels (role) by default depending on the market. To elevate permissions to a higher permission level for Instructors or Administrators you will need to add Role Mappings to grant this elevation either by Attribute Value or Individual UserID. For more information on Account Level Permissions, please see the following article:
https://swankmp.zendesk.com/hc/en-us/articles/5723258435092-Cloud-Streaming-User-Account-Roles
There are 3 methods of providing roles and are respected in the following order - with the former values overriding any latter options.
- Claim/Attribute of "role" directly provided by your Identity Provider
- Role Mapping on the Portal's SSO Configuration
- The Portal Default "User" or "Basic" role (Set by your Swank support)
Option 1: Identity Provider Role Assignment (Recommended)
Your Identity Provider can provide a Claim or Attribute for each User with the Name of "role" and the Value of one of our available user roles: "Admin", "Instructor", "User", or "Basic". This allows your Identity Provider Admin to set the roles based on policies and rules aligned with your organizations larger technology access strategy and to manage that access centrally at your User Directory.
Each Identity Provider has a different method for handling this action, below are some examples for Google and Azure for reference.
For Google:
- Go to Users and under More options, choose Manage custom attributes
- Add a Custom Attribute: Choose any name you'd like for tracking.
- Assign that Custom Attribute to an App Attribute of "role" in the SAML Attribute mappings.
- Make sure the User Information in Google Directory populates that Custom Value correctly for each user:
For Azure:
- Add a User Attribute such as 'SwankRole' that has a Data Type of String
- Define this string for your users as required
- In your Azure SAML Configuration, go to the Attributes & Claims and click Add new claim
- Edit the Name values to role, and map the Source attribute to the User Attribute created in step 1
You can verify you have "Role" attribute provided by checking your diagnostics while logged in under the desired SSO setup. Log into your Portal's catalog, appending /diagnostics to the URL: (e.g.: https://digitalcampus.swankmp.net/[your site ID]/diagnostics or https://streaming.swankmp.net/[your site ID]/diagnostics)
Option 2: Role Mapping via Attributes
To use this, you will need to identify or create an attribute that defines the user group(s) (such as a department) and differentiates them from the general population (students). Those attributes must be provided to your SSO configuration via your Identity Provider. You can see what attributes are currently being delivered in your SAML statement via checking your diagnostics.
Log into your Portal's catalog, appending /diagnostics to the URL: (e.g.: https://digitalcampus.swankmp.net/[your site ID]/diagnostics or https://streaming.swankmp.net/[your site ID]/diagnostics)
Under Access Token you will find the available attributes available to role map.
In this example, you can see the attribute "department" has a value of "adminDepartment". We will use this as an example as to how to grant "Admin" permissions to all users with this attribute value:
- While editing the SSO Provider, go to the Claims Role Mappings table, click Add Role Mapping
- In the Add Role Mapping pop-up window, for this example you would enter:
Claim Name: "department"
Claim Value: "adminDepartment"
Role: "Admin"
- Click Save, You will now see your Role Mappings in the listing
You may add as many of these as needed for Instructor and Administrator permissions. You can see from the example above, you can use direct email addresses, or even these can be based on Groups, such as email groups provided by Google:
Final Step
Make Configuration Active
Once you configured your SAML Identity Provider, and determined your User's roles, remember to click the Activate toggle on the SSO Configuration page for your chosen Provider(s). If you are currently viewing the SSO Configuration detail page, you can click the "Go Back" link at the top of the page or click SSO Configuration from the side menu.
- Toggle Active to the On position for your new SSO Configuration.
Comments
0 comments
Please sign in to leave a comment.