Developing an LTI tool with Auth0
I'm currently developing an LTI tool for Canvas (1.3/Advantage).
I've followed this documentation, and got a basic version working for Resource Links:
- A user clicks on the resource link from Canvas.
- Canvas calls the /login endpoint on my LTI tool, which sends back an auth request.
- Canvas calls the /launch endpoint on my LTI tool, with an id token for the user.
- My LTI tool then verifies the token is valid and displays the link.
(I've also got deep linking working using this system.)
However, my main web app currently uses Auth0 for authentication. And so, as things stand, once a user is redirected to my app, they would then have to create an account or login separately, in order to access everything. I then manually connect their Canvas user ID with their Auth0 user ID for e.g. grade syncing.
Obviously, this is less than ideal.
Instead, I would love Auth0 to 'recognise' the user from Canvas – so that users did not have to create a separate account, but could still access the full functionality as if they had registered on my app independently of Canvas (i.e. they log in just once into Canvas, and can then access everything as normal).
Unfortunately, I'm relatively inexperienced with auth, so I'm not sure which docs to search for – or whether this is even possible with Canvas 😅 Would anyone be able to point me in the right direction?
Thanks in advance!