Skip to main content
ExLibris
  • Subscribe by RSS
  • Ex Libris Knowledge Center

    Configuring Learning Tools Interoperability (LTI)

    Translatable
    To configure the LTI integration profile, you must have the following role:
    • General System Administrator
    You configure authentication between Leganto and your course management systems using Learning Tools Interoperability (LTI) integration profiles. After entering the required information to set up an integration profile, Alma supplies you with the credentials your course management system requires to operate with Leganto. For help with configuring your CMS, see LTI.
    You can add normalization rules for the course codes and user IDs imported using this profile. You can also select which CMS roles are considered instructors in Leganto.
    The parameter cms_entry_actions determines if certain options are available to an instructor who arrives to Leganto from the CMS using a course link when a) the course is not yet defined in Leganto/Alma and/or b) the course is defined but has no reading lists. See the following sections:
    Internal users can access Leganto via the LTI by setting the allow_internal_users parameter to true (Configuration Menu > Leganto > LTI > Settings).
    After configuring and enabling this profile, a user using your CMS is automatically logged into Leganto when the user opens Leganto from the CMS. For this purpose, in addition to the site's credentials, the CMS passes the user's name, and optionally the user's first name, last name, and email address. In addition, the link that the user selected in the CMS provides Leganto with the exact course, reading list, section, or citation that the user is trying to access.
    When a CMS user does not exist, the user is redirected to a login page. If you would like Alma to automatically create any unregistered users, enable self-registration (see below). If you configure that first name, last name, or email address are mandatory (Configuration > User Management > User Details > User Registration Form), but they are not supplied by the CMS, the user is prompted to enter these to register; otherwise, the user is created seamlessly without the missing values.
    You may want to configure multiple LTI profiles if you are running multiple CMS's or for some other reason.
    To configure LTI:
    1. On the Alma Integration Profile List page (Configuration Menu > Leganto > LTI > Integration Profiles), select Add Integration Profile. The Integration Profile page appears.
      Integration_Profile_Page.png
      Page 1 of the Wizard
    2. In the Integration type field, select LTI Tool.
      The page refreshes with different fields.

      LTI_Integration_Profile_Page_1.png

      LTI Integration Profile, Page 1
    3. Enter a Name for the profile.
    4. Select your course management system in the LMS System field. The current options are:
    5. Enter an optional Description.
    6. Select Next. The second page of the wizard appears.

      LTI_Integration_Profile_Step_2.png

      LTI Integration Profile Step 2

      When using Blackboard, some functionality provided within reading lists may not be accessible if instructors have enabled the LMS's student view. To make sure that instructors are aware of this, they will now receive the following message when they access a reading list while the LMS's Student View is enabled: Reading Lists can’t be loaded in the learning management system’s Student View. Instead, use the View List as a Student option in the Reading List’s Main Menu.

      This message can be configured in the Labels table (Leganto Configuration > General > Labels), in the lti.user.error.studentView code.

      There is currently only one option for the mandatory field LTI Type.
    7. In the LTI Version field, select your LTI version, either 1.1 or 1.3. After selecting the LTI version, the page refreshes with the credentials you must enter into your course management system. Copy these credentials and enter them in your course management system where required.

      LTI_Integration_Profile_Step_2.png

      LTI Integration Profile, Page 2 – For Version 1.X
      If you add the URL parameter debug=true to the end of the LTI Launch URL, then the URL points to a debug screen instead of Leganto (if there are no other URL parameters, add ?debug=true; if there are other URL parameters, add &debug=true). This may be useful for troubleshooting. Note that this URL works only when accessing Leganto from the CMS; the URL with the debug parameter does not work in a web browser.
      Leganto Debug Page
       
      Leganto Debug Page
      For additional troubleshooting options, see troubleshooting LTI 1.1 and LTI 1.3
    8. When Leganto is embedded in an iFrame, you can select to have the top menu hidden by default. The top menu contains the user and language menus.
      A user trying to access Leganto embedded in a CMS may see a message indicating that Leganto must run in a new tab. When the user confirms, Leganto opens in a new tab instead of embedded.

      A flag can be set to hide the logout option in the user menu when viewing Leganto in embedded mode.
    9. If required, specify the user ID and/or course code fields. This is only relevant for LTI 1.1 integration profiles.
      This is useful when the names of these fields are not the default values, which are:
      • User ID:
        • Moodle – ext_user_username
        • Sakai – ext_sakai_eid
        • Canvas – lis_user_username
        • Desire2Learn – ext_d2l_username
        • Other – custom_lis_user_username
      • Course Code: custom_lis_course_id or custom_lis_course_code. If you are using Blackboard collapsed courses, and you would like that the parent course's reading list appears when a link to a child course is selected, enter context_label in this field.
    10. Select User information is mandatory to make first name, last name, and email address mandatory fields. If you select this, any users who do not already have values for these fields are asked to enter values for these fields the next time they try to enter Leganto from your CMS.
    11. When a CMS user does not exist, the user is redirected to a login page. If you would like Alma to automatically create any unregistered users (similar to what happens for Social Login), select Active in the Self-Registration section and configure the following fields in this section:
      • User Identifier - Select the user identifier type that the users use to log in.

        When enabled by Ex Libris, you can select the option LTI id of self registeredWhen selected, Alma assumes that this integration profile is for an "open course", which may have users who want to register with usernames that already exist in Alma. Alma ensures that these users do not clash with any existing Alma users by creating the users with a string added to their username. So even if a user named mark already exists in Alma, a user with the name mark coming from this profile is registered as a new username. When any other ID is selected, users are assumed to be institution users, and usernames are checked against existing usernames. A user named mark that already exists is not given a new username.

      • User Group - The user group to which to assign all users created by this profile. See Configuring User Groups.
      • Resource Sharing Library - The resource sharing library to assign to all users created by this profile. See Resource Sharing.
      • Statistical Category - The statistical Analytics category to which to assign to all users created by this profile. See Configuring Statistical Categories for Analytics.
    12. Select Save. The credentials are saved in Alma.
      • Optionally add normalization rules for the course codes and user IDs imported using this profile. See Configuring LTI Profile Normalization Rules.
      • Optionally map CMS roles to instructors in Leganto. See Mapping CMS Roles to Instructors in Leganto.
    13. You will need to share information from this page with your CMS administrator, who will continue the setup within the CMS. See the Developer Network for more information about setting up the integration using LTI 1.1 or LTI 1.3.

      For LTI 1.3, you need to update this integration profile with additional information from your CMS administrator, as described in the instructions on the Developer Network. (Update Your Integration Profile.)

    Configuring LTI Profile Normalization Rules

    You configure LTI integration profile normalization rules on the LTI Normalization Type to Method mapping table (Configuration Menu > Leganto > LTI > Field Normalization). For more information about mapping tables, see Mapping Tables.
    LTI_Normalization.png
    LTI Normalization Type to Method Mapping Table
    You can add normalization rules with the following elements:
    • Field Type - The field in the record to normalize: Course Code or User Id.
    • Regular Expression - A regular expression to search for in the field.
    • Normalization Method - What to do with the string in the field that matches the regular expression:
      • Concat to end - Append the contents of Replace With after the matched string in the field.
      • Concat to start - Insert the contents of Replace With before the matched string in the field.
      • Keep - Keep the contents of the regular expression that appear in the first set of parentheses (for example, keep $1 and discard the rest of the field). Replace With is ignored. For example, if your regular expression is .{2}(.*), then admin becomes min.
      • Lowercase - Lowercase the contents of the regular expression that appear in the first set of parentheses (for example, replace $1). Replace With is ignored. For example, if your regular expression is .{2}(.*), then ADMIN becomes ADmin.
      • Remove - Remove the contents of the regular expression that appear in the first set of parentheses (for example, discard $1). Replace With is ignored. For example, if your regular expression is .{2}(.*), then ADMIN becomes AD.
      • Replace - Replace the contents of the regular expression that appear in the first set of parentheses with the contents of Replace With (for example, replace $1). For example, if your regular expression is .{2}(.*) and Replace With is 123, then ADMIN becomes AD123.
      • Replace all - Replace all contents of the regular expression that appear in the first set of parentheses with the contents of Replace With (for example, replace all $1). For example, if your regular expression is .{2}(.*) and Replace With is 123, then all instances of ADMIN become AD123.
      • Uppercase - Uppercase the contents of the regular expression that appear in the first set of parentheses (for example, replace $1). Replace With is ignored. For example, if your regular expression is .{2}(.*), then admin becomes adMIN.
    • Replace With - See Normalization Method.
    • LTI Profile - The LTI profile to which this customization applies.

    Mapping CMS Roles to Instructors in Leganto

    You can configure Alma to automatically add the instructor role to users arriving from the CMS. Additionally, you can determine if the user is also added as an instructor to the relevant course.

    When the Instructor role is added through an LTI, on the User Details History, when the Roles field is updated to add the Instructor role,the User's name appears as the Operator.

    The Instructor role is not added to users who already have the Course Reserves Operator or Course Reserves Manager role.  

    Each row in the table adds the instructor role automatically to any user coming from the CMS with the configured CMS role. 

    You create this mapping on the LTI - Course Management System Roles Mapping mapping table (Configuration > Leganto > LTI > Course Management System Roles Mapping). For more information about mapping tables, see Mapping Tables.

    For Canvas users, see Canvas.

    Working with the CMS Role

    Leganto receives the role in a parameter called roles. The role looks similar to the following:

    • roles=urn:lti:role:ims/lis/Instructor

    Everything to the right of the = sign is the CMS role. In the above example, this refers to urn:lti:role:ims/lis/Instructor.

    LTI_Course_Management_System_Roles_Mapping_Mapping_Table.png

    LTI - Course Management System Roles Mapping Table

    We recommend leaving the Expiration Days field blank. The expiration date is a static date and is not updated when instructors come to Leganto after the first time. Instructors cannot use Leganto after the Instructor role has expired.

    New for September! If Expiration Days is populated for role, and a user with that role accesses Leganto before the expiration date, Leganto automatically extends that expiration date to enable that user to continue accessing Leganto.

    You can add, edit, and delete rows. In each row, configure:

    • The LTI profile to which this mapping applies.
    • A substring to match within CMS role, used to determine whether to map the role. This field is case-insensitive. For example, if the role received from the CMS is urn:lti:role:ims/lis/Instructor, then the substring instructor matches the role.
    • The number of days after which the user is removed as instructor for the course (if configured to be instructors by the next column).
    • Whether or not users with this role are added as instructors to the relevant course.

    If you are using Canvas, you must first update the custom fields on the External Tool (for LTI 1.1) or the Developer Key (for LTI 1.3) in Canvas to include lms_user_roles=$Canvas.membership.roles. See the Developer Network for details. Once the LTI tool has been updated, use the CMS role: TeacherEnrollment on the Course Management System Roles Mapping table. Otherwise, users are added as instructors in Leganto if they are listed as instructors on any course in Canvas.

    For more information about mapping LTI course management system roles, see the IMS Global website.

    Direct Access to Reading List, Section, or Citation from a CMS

    You can provide direct access for your students and instructors to a specific reading list, section, or citation from a CMS (the list must be published). To do this, the person creating the link to Leganto in the CMS must add a URL parameter/value pair with the reading list, section, or citation ID.
    • Directly accessing a reading list opens Leganto on the reading list page. See Linking to a Reading List in the Leganto User Interface Guide.
    • Directly accessing a section is the same as directly accessing a reading list, except that all other sections in the reading list are collapsed by default/all other sections are filtered out by default (depending on your library's setting). See Linking to a Section in the Leganto User Interface Guide.
    • Directly accessing a citation opens Leganto on the citation page. See Linking to a Citation in the Leganto User Interface Guide.
    Always use an LTI direct link to provide access from the CMS. Shareable links (which are also available in the Leganto UI) provide only guest access to Leganto, and do not maintain any course or user information.
    • Was this article helpful?