Interesting problem with Google Drive LTI
I stumbled across an interesting problem with Google Drive LTI and our instance of Canvas and wanted to know if there was a more graceful way of resolving the issue. We rely on this LTI to turn in assignments and in testing I found a way that may prevent a student from submitting assignments successfully. Our instance also logs in through Google accounts with SSO which seems to be a large factor. Steps to reproduce:
- Enroll a student into a course (preferably a test account)
- Create an assignment in the course which requires submitting through the Google Drive LTI
- As the test user, navigate to this assignment and authorize the LTI to access your Google account.
- As the test user, login to https://accounts.google.com and open the Security menu from the menu on the left side of the window
- Once in the Security menu, scroll down to the Third-party apps with account access card and click Manage Third Party access
- Click on the Google Drive LTI by Canvas card and select REMOVE ACCESS, then confirm the removal
- Now, as the the test user, navigate back to the assignment using this LTI and refresh. I needed to refresh without cache occasionally (ctrl + shift + r, cmd + shift + r).
- You should receive a loading screen for the assignment which will never resolve.
Steps I took to attempt to resolve this with no resolution:
- Clear cache of the test user, logout of Canvas and back in. No resolution
- Log in from a completely different browser, no resolution
- Remove the LTI from the test users account (Settings > Approved Integrations > Delete), clear cache again, no resolution
- Create a new assignment using the LTI to submit to force prompt for re-authorization, no resolution
The only method that I found to successfully get the authorization prompt to come back up was as an Admin, delete the test user's account completely and re-invite them to the course (Admin > Org > People > Test Account profile > Delete from Org). Is this a known issue, and if so, is there a resolution to reauthorize the LTI without deleting the student profile?