aws-samples / aws-samples/enable-lti

Doesn't seem to be validating the cookie 'state' in LTI launch / Doesn't work in Safari due to third party cookies

Open
#25 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
13
Forks
6
PR merge metrics
No merged PRs in 30d

Description

Hi I've just been exploring this project as a possible starting point for a modern LTI tool and noticed it doesn't seem to be validating the 'state' value that is set in a cookie during the first step of LTI launch. I was expecting the cookie to be retrieved in the lambda on the /launch endpoint but I couldn't find where this was happening which leads me to think this isn't LTI 1.3 compliant?

I noticed this because when launching in Safari it should block third party cookies which would then break the LTI launch flow but it did not in the way I expected. It did break in Safari on the next part (OAuth flow to the IDP) for this exact reason but not for the LTI launch.

LTI has a spec to address the Safari issue with third party cookies but I don't see how this can be fixed in an iFrame for the OAuth flow to the IDP?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.