Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
log error report when tool mangles parent_frame_context
why: * LTI tools are supposed to account for existing query parameters in the launch and especially 1.1 content return URLs, but sometimes do not * this can mess up the parent_frame_context header, which is necessary for nested LTI launches (like from RCE in NQ) to function properly (sets the CSP header to allow Canvas to be rendered within NQ) * there isn't much we can do to fix this, the launch will be blocked by the browser for CSP violations, so the least we can do is log an ErrorReport to give the admins a heads up * look for some form of community guide to troubleshoot CSP errors in nested tools closes INTEROP-8567 flag=none test plan: * visit some form of this url: http://canvas.docker/courses/1/external_tools/retrieve?url=http://lti13testtool.docker/launch&parent_frame_context=97700000000003582return_type replacing your canvas and tool domains as necessary * check the /error_reports page and note a new report * report should include the query params from the fatal request * bonus points: * embed a tool in your test tool by modifying its source code to include an iframe pointing to either itself or another tool * make sure that iframe has a url just like the one above * launch the test tool and confirm that the nested tool is CSP-blocked Change-Id: Ie4550b1f40415a2814daceb03bef419914a1e80a Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/346395 Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com> Reviewed-by: Tucker Mcknight <tmcknight@instructure.com> QA-Review: Tucker Mcknight <tmcknight@instructure.com> Product-Review: Mark Starkman <mark.starkman@instructure.com>
- Loading branch information