Canvas LMS cloud application

You must be signed in as a super administrator for this task.

 

With Security Assertion Markup Language (SAML), your users can sign in to enterprise cloud applications with their Google Cloud credentials.

Set up SSO via SAML for Canvas LMS

Before configuring SSO, ask Canvas LMS®  support to provide a unique account ID for your organization. This is provided after registration.

 

Step 1: Set up Google as a SAML identity provider (IdP)
  1. Sign in to your Google Admin console.

    Sign in using your administrator account (does not end in @gmail.com).

  2. From the Admin console Home page, go to Apps and then SAML apps.

    To see Apps on the Home page, you might have to click More controls at the bottom. 

  3. Click the plus (+) icon at the bottom right.
  4. Locate and click Canvas LMS in the application list.
  5. On the Google IDP Information page, download the IDP metadata.
  6. Click Next.

    The Basic information window shows the Application name and Description seen by users.

  7. Click Next.
  8. On the Service Provider Details page, edit the ACS URL, Entity ID, and Start URL, replacing {your-account-id} with your organization’s account ID provided by and registered on Canvas LMS.
  9. Click Finish.
Step 2: Host the Google IDP metadata to a public file server

On a publicly accessible file server, host the Google IDP metadata file downloaded in step 1. The file must be served directly, not via any redirects. The file also needs to be permanently available at a specific URL. It is requested by Canvas LMS each time a user signs in.

Step 3: Set up Canvas LMS as a SAML 2.0 service provider (SP)
  1. Open a new incognito browser window.
  2. Sign in to https://{your-account-id}.instructure.com with your organization's Canvas LMS administrator account.
  3. Click Admin on the left and select Authentication.
  4. Add SAML as the authentication provider.
  5. In the IdP Metadata URL field, paste the URL of the Google IdP metadata hosted on the file server as detailed in step 2.
  6. Click Save. The values of the rest of the fields are populated based on the IdP Metadata.
  7. Ensure that the Identifier Format selected is nameid-format:emailAddress.
  8. Ensure that the Authentication Context selected is classes:Password.
  9. Enable Just in Time Provisioning.
  10. For SAML authentication, select 1 for Position.
  11. Click Save.
Step 4: Enable the Canvas LMS app
  1. Sign in to your Google Admin console.

    Sign in using your administrator account (does not end in @gmail.com).

  2. From the Admin console Home page, go to Apps and then SAML apps.

    To see Apps on the Home page, you might have to click More controls at the bottom. 

  3. Select Canvas LMS.
  4. At the top right of the gray box, click Edit Service Compose.

  5. To turn on or off a service for everyone in your organization, click On for everyone or Off for everyone, and then click Save.

  6. To turn on or off a service only for users in an organizational unit:

    1. At the left, select the organizational unit.
    2. Select On or Off.
    3. To keep the service turned on or off even when the service is turned on or off for the parent organizational unit, click Override.
    4. If the organization's status is already Overridden, choose an option:
      • Inherit—Reverts to the same setting as its parent.
      • Save—Saves your new setting (even if the parent setting changes).

    Learn more about organizational structure.

  7. Ensure that your Canvas LMS user account email IDs match those in your Google domain.
Step 5: Verify that the SSO is working
  1. Close all browser windows.
  2. Open https://{your-account-id}.instructure.com. You should be redirected to the Google sign-in page.
  3. Enter your username and password.
  4. After your credentials are authenticated, you are redirected back to Canvas LMS.

If the user account authenticated by Google IdP does not already exist in Canvas LMS, a new user account is automatically provisioned by Canvas LMS for the signed-in user.

Was this helpful?
How can we improve it?