canvas-lms icon indicating copy to clipboard operation
canvas-lms copied to clipboard

Fix cookie samesite issue for LTI 1.3 deep linking

Open jbergfi opened this issue 2 years ago • 2 comments

LTI 1.3 deep linking don't seem to be working in latest Chrome. Seemingly this is due to because SameSite property of session and CSRF token cookies are not set to None to allow cross-site. Even though the deep link selection iframe ends up at same domain (Canvas) it's navigated to through the tool domain which effectively makes it cross-site.

Closes gh-1900

Test plan:

  • Test LTI 1.3 deep linking with an external tool
  • Test compatibility with different browsers (new browsers supporting SameSite: None and browsers not supporting)
  • Investigate any undesired security implications this change might have

jbergfi avatar Sep 19 '22 12:09 jbergfi

CLA assistant check
All committers have signed the CLA.

CLAassistant avatar Sep 19 '22 12:09 CLAassistant

Please consider I don't really know anything about Ruby or Canvas codebase or what impacts this change may have. This was merely my workaround how I could make my LTI 1.3 deep linking tool work with my self-hosted Canvas instance.

jbergfi avatar Sep 19 '22 13:09 jbergfi