Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dynamic Registration Uses Invalid Error Response Body #2396

Open
jsbass opened this issue Aug 10, 2024 · 1 comment
Open

Dynamic Registration Uses Invalid Error Response Body #2396

jsbass opened this issue Aug 10, 2024 · 1 comment

Comments

@jsbass
Copy link

jsbass commented Aug 10, 2024

Summary:

Canvas's dynamic registration response does not match the LTI/OIDC specification for an error response to dynamic registration.
OIDC Spec
LTI Spec

Steps to reproduce:

  1. Use tool dynamic registration endpoint that sends invalid parameters to the registration URL
  2. Receive error response from Canvas
  3. Observe that the response body does not match the expected parameters

Expected behavior:

A 400 HTTP Status Code with a JSON body formed with at least the following parameters:

{
    "error": "invalid_redirect_uri | invalid_client_metadata | *other_code*",
    "error_description": ""
}

Actual behavior:

A 422 HTTP Status Code with a JSON body as below:

{
    "errors": [""]
}

Additional notes:

Non standard error codes and extra parameters are valid but the message should at least have the expected parameters in the error response as well as use the expected HTTP status code.

@jsbass
Copy link
Author

jsbass commented Aug 10, 2024

Not sure how to handle the incorrect status code to not break existing integrations but, it should be easy enough to add the standard parameters but leave the "errors" parameter to the response body as well to support backwards compatibility.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant