Skip to content

LTI 1.1 - resource_link_id is not unique across platform #614

@scottrish

Description

@scottrish

The LTI 1.1 specification states that the following about resource_link_id:
"This is an opaque unique identifier that the TC guarantees will be unique within the TC for every placement of the link. If the tool / activity is placed multiple times in the same context, each of those placements will be distinct. This value will also change if the item is exported from one system or context and imported into another system or context. This parameter is required."

In Open edX the component block ID is used as the resource_link_id. When a rerun, or a CCX, is created the block IDs are reused in the new run/CCX, which means the resource_link_id is not guaranteed to be unique across the platform.

This has implications for tools which do expect the resource_link_id to be unique. For example, a video conferencing tool, or discussion forums, might use the resource_link_id to ensure data isolation and avoid the commingling of learner data across courses/classes.

This issue is not present in LTI 1.3 where the resource_link.id is prefixed with the org, course number and run, and will therefore be unique across the platform:

  • block-v1:VUE+SD101+2025+type@lti_consumer+block@e800b1f5aef5432fa7270c8fb29e73e2
  • ccx-block-v1:VUE+SD101+2025+ccx@3080+type@lti_consumer+block@e800b1f5aef5432fa7270c8fb29e73e2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions