Register an external learning tool for LTI Advantage
Registration is the first step of integrating a tool with a platform and completes the security and sing sign-on (SSO) processes of the integration.
Important: An external learning tool can only have one functioning domain registered with a platform.
The following information is relevant to the tool registration.
- Client Id: The ID used in OAuth2 authentication to make requests to the services (Names and Roles, Assignment and Grade)
- Brightspace Keyset URL: Where Brightspace keys are stored. Tools require this during the registration and are used during launch (D2L signs the launch message, and the tool validates D2L's signature with this)
- Brightspace OAuth2 Access Token URL: Where tools go to retrieve new access tokens for OAuth2 service requests
- OpenId Connect Authentication Endpoint: The endpoint where Brightspace sends the login response to
- Brightspace OAuth 2 Audience: The intended recipient of the token
- Issuer: The URL of the Brightspace instance; Tool validates that we set this as the issuer when we sign our launch message
Note: To register a tool, ensure the Manage LTI Advantage Tool Registrations and Manage LTI Advantage Tool Deployments permissions are set at the organization level, and complete the following steps.
To register a tool- From the Admin Tools menu, click Manage Extensibility.
- From the LTI Advantage tab, click Register Tool.
Figure: The Register Tool button. - Choose either Dynamic or Standard registration, click Register.
- For Standard registration complete the following fields (* indicates required fields):
- Name*
- Description
- Domain*
Note: Domains can only be used in one enabled registration at a time. If you attempt to register a tool with a domain that is already in use, you will be prompted to disable the existing registration. - Redirect URLs*
- OpenID Connect Login URL*
- Target Link URI
- Keyset URL
- Extensions
- For Dynamic registration, complete the following fields: enter the Dynamic Registration URL provided by the tool. It is optional to allow the tool to also create the deployment with links. Once the Dynamic Registration workflow is complete, the Registration is disabled by default as per the specification. It is recommended to review the Extensions, Parameters, and Security Settings (in the deployment if applicable) that the tool has asked for to ensure they meet your organization's use cases.
Note: Dynamic registration redirects to the tool’s endpoint in a new tab. This prevents same site and cross-site cookie issues.
- For Standard registration complete the following fields (* indicates required fields):
- Under Roles,choose to send IMS role data for the Institution and Context roles or only the Context role. If the Send Institution Role checkbox is selected, Context and Institution roles are included in the role mapping from the IMS configuration when the tool is launched. The user's Context Role is also included unless the security setting at the Deployment is set to Anonymous. If the Send Institution Role checkbox is cleared, only Context roles are included.
- Substitution Parameters: Users can select from a pre-defined list of parameters that is dynamically substituted with a value from the LMS at the time of launch. Brightspace currently supports the following parameters:
- $Context.id.history
- $CourseOffering.sourcedId
- $CourseOffering.title
- $CourseSection.label
- $CourseSection.sourcedId
- $CourseSection.title
- $CourseSection.timeFrame.begin
- $CourseSection.timeFrame.end
- $CourseTemplate.sourcedId
- $CourseTemplate.title
- $Person.address.timezone
- $Person.email.primary
- $Person.name.family
- $Person.name.full
- $Person.name.given
- $Person.sourcedId
- $ResourceLink.available.startDateTime
- $ResourceLink.available.endDateTime
- $ResourceLink.description
- $ResourceLink.id.history
- $ResourceLink.submission.endDateTime
- $ResourceLink.title
- $User.id
- $User.username
- Customer Parameters: In instances where tools need to define both the name and value of a custom parameter, they can be defined here. These parameters are not dynamically replaced and are constrained to sending a static value for each launch.
Note: Substitution Parameters and Custom Parameters created at the Registration level cascade to the Deployment and Link level. - Click Register.
Deploy an external learning tool for LTI Advantage
Deployments allow sharing of registered tools in Brightspace to specific org units or decendants of parent org units. When you deploy a tool, specify the extensions available along with all the applicable security settings. A check box is available to allow LTI Administrators to set if all links below that level are automatically set to Open as External Resource.
Note: To deploy an external learning tool, ensure the Manage LTI Advantage Tool Registrations and Manage LTI Advantage Tool Deployments permissions are set at the organization level and the tool has been registered.
To deploy an external learning tool- From the Admin Tools menu, click External Learning Tools.
- In the LTI Advantage tab, click New Deployment.
Figure: The New Deployment button.
- From the Tool drop-down list, select Registration.
- Enter a Name and Description.
- Select an Extension, the desired Security Settings, and Configuration Settings.
- Set any required Substitution Parameters. Users can select from a pre-defined list of parameters that is dynamically substituted with a value from the LMS at the time of launch. Brightspace currently supports the following parameters:
- $CourseSection.timeFrame.begin
- $CourseSection.timeFrame.end
- $ResourceLink.available.startDateTime
- $ResourceLink.available.endDateTime
- $ResourceLink.submission.endDateTime
- $CourseSection.timeFrame.begin
- Set any required Customer Parameters:in instances where tools need to define both the name and value of a custom parameter, they can be defined here. These parameters are not dynamically replaced and are constrained to sending a static value for each launch.
- Select Add Org Units to authorize sharing of the tool.
- Click Create Deployment.
Note: Substitution and Custom parameters that you create at the Registration level cascade to the Deployment and Link level.
Note: After a deployment is created for that Tool, the Tool for that deployment can no longer be changed.
Once the tool is successfully deployed, you receive a Deployment Id. This is a GUID-based globally unique ID for this specific deployment. It is used to uniquely reference this specific deployment of a registered tool, which may be required by the tool during setup.
Registered tools can have multiple deployments. Each individual deployment can be unique, supporting the ability for different LTI extensions and Security Settings per deployment. The deployment is what shares the learning tool to courses. The Add Org Units sharing button at the bottom of the creation screen for deployments is how your new tool is made available to your courses.
Substitution and Custom Parameters can also be created at the Deployment level and cascade down to the link level. If parameters are created at the Registration level, they are visible at the Deployment and link levels, but are greyed out and not editable. If a parameter is created at both the Registration and Deployment level, the Deployment parameter is used in the LTI launch.
Create an external learning link for LTI Advantage
Once you successfully create a tool deployment, you need to create the LTI links. Links can be created for use in the org unit(s) from the deployment, or users with permissions can create individual links at the org level where the tool is deployed to. In cases where a tool requires multiple LTI links to be created per course or for many courses, the tool would provide a deep linking workflow to enable users to create the links quickly and easily.
Most integrations create the LTI links via deep linking for you. But on occasion you may need to create an LTI link manually. You can create these in the following ways:
- From the deployment page of a newly deployed tool, by clicking View Links.
Note: Links created for a deployment appear in all courses the deployment is shared to. Substitution and Custom Parameters can also be created at the Link level. If parameters are created at the Registration or Deployment level, they are visible at the link level, but are grayed out and not editable. If the same parameter is created at the Registration, Deployment and link level, the link parameter is used in the LTI launch. - Directly from the External Learning Tool page in a course, under LTI Advantage, you can add new links. Items highlighted and clickable in blue are links you can edit created at the course level. Greyed out link names are links created at the deployment level and cannot be edited at the course level. Note that links created at the org unit will not be visible from the deployment level.
- From the Admin Tools menu, click External Learning Tools.
- On the LTI Advantage tab, select an existing deployment.
- Scroll to the bottom and click View Links.
- Click New Link.
- Specify the following fields on the Create Link section:
- Name: The desired name for your content selector. The name you specify here is the name that appears in the UI in other areas.
- URL: The launch point URL that the user navigates to when they click the content selector.
- DescriptionAn optional description to help users understand what this tool does.
- Type: The type defined dictates how the link can be used. The default value is Basic Launch, meaning the link only performs the usual LTI launch. For deep linking, select one of the following deep linking selector types supported by Brightspace:
- Deep Linking Quicklink: Exposes the link as a content selector in our quicklink menu areas.
- Deep Linking Insert Stuff: Exposes the link as a content selector in the Insert Stuff Brightspace Editor area.
Note: The plugin used should be dictated by the tool provider.
- Width and Height: When selecting content, Brightspace opens an iFrame displaying the tool UI to discover content. These settings dictate the size of the iFrame.
- Substitution Parameters: You can select from a pre-defined list of parameters that is dynamically substituted with a value from the LMS at the time of launch. Brightspace currently supports the following parameters:
- $CourseSection.timeFrame.begin
- $CourseSection.timeFrame.end
- $ResourceLink.available.startDateTime
- $ResourceLink.available.endDateTime
- $ResourceLink.submission.endDateTime
- Custom Parameters: In instances where tools need to define both the name and value of a custom parameter, they can be defined here. These parameters are not dynamically replaced and are constrained to sending a static value for each launch.
Note: Substitution and Custom parameters that are shared from the Registration or Deployment level are grayed out at the link level and are not editable. If a duplicate parameter is created at the link level, the link parameter details are included in the launch.
-
Click Save and Close.
Note: The following workflows result in a link defaulting to Open as External Resource regardless of the Deployment setting:
- Lessons experience: if a link is added from Content > Existing Activities > External Learning Tools.
- Brightspace Editor: Quicklinks created via CIM.