LtiException at /launch/ - Not able to launch Lti external app in Chrome

odaskaug
Community Member

Hi,

We are trying to configure and launch an external LTI app in a bitnami-hosted instance of Canvas. After configuring the tool according to online doc and configuring the dynamic_settings.yml as noted online, we are still unable to get it to work correctly. The LTI tool is a Django application is a fork of this repository and it is currently hosted in Heroku. The form data received after header request is as follows:

error: Missing id_token

error_description: Must have an active user session

 

The error log output is:

Environment:


Request Method: POST
Request URL: https://app/launch/

Django Version: 3.1.8
Python Version: 3.9.5
Installed Applications:
['django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'game',
'debug_toolbar']
Installed Middleware:
('whitenoise.middleware.WhiteNoiseMiddleware',
'game.middleware.SameSiteMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware')

 

Traceback (most recent call last):
File "/app/.heroku/python/lib/python3.9/site-packages/django/core/handlers/exception.py", line 47, in inner
response = get_response(request)
File "/app/.heroku/python/lib/python3.9/site-packages/django/core/handlers/base.py", line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/app/.heroku/python/lib/python3.9/site-packages/django/views/decorators/http.py", line 40, in inner
return func(request, *args, **kwargs)
File "/app/game/game/views.py", line 89, in launch
message_launch_data = message_launch.get_launch_data()
File "/app/.heroku/python/lib/python3.9/site-packages/pylti1p3/message_launch.py", line 437, in get_launch_data
return self._get_jwt_body()
File "/app/.heroku/python/lib/python3.9/site-packages/pylti1p3/message_launch.py", line 290, in _get_jwt_body
self.validate()
File "/app/.heroku/python/lib/python3.9/site-packages/pylti1p3/message_launch.py", line 275, in validate
return self.validate_state()\
File "/app/.heroku/python/lib/python3.9/site-packages/pylti1p3/message_launch.py", line 537, in validate_state
id_token_hash = self._get_id_token_hash()
File "/app/.heroku/python/lib/python3.9/site-packages/pylti1p3/message_launch.py", line 310, in _get_id_token_hash
id_token = self._get_id_token()
File "/app/.heroku/python/lib/python3.9/site-packages/pylti1p3/message_launch.py", line 304, in _get_id_token
raise LtiException("Missing id_token")

Exception Type: LtiException at /launch/
Exception Value: Missing id_token

Help!

Labels (1)