Comments (6)
I have used this library for a number of different tools, including https://saltire.lti.app/tool, and not encountered any issues. Were you using a PEM-formatted public key or a URL to a public key endpoint? If the former, try using the latest release (4.6.4) which fixed an issue with the update to the latest JWT library.
from lti-php.
I have tried using https://lti-ri.imsglobal.org/ as a platform to launch to https://saltire.lti.app/tool as the tool, but currently after the OIDC exchange the platform is sending a message without includiung the state parameter so it is rejected. This looks like a bug with https://lti-ri.imsglobal.org/ but I'll continue to explore this. Have you tried using any other platforms such as Moodle, Canvas, Blackboard or Brightspace?
from lti-php.
Thank you for the response. I am using a URL to a public key endpoint. I have tested in moodle and receive the following error: "signature check failed - perhaps an invalid public key or timestamp"
from lti-php.
I have explored the IMS reference implementation further and it appears that it only supports authentication requests sent using HTTP GET requests. The spec allows GET or POST to be used and this library uses POST. When I changed this to use GET, the launch from the reference implementation was successful with the saLTIre tool.
As for your issue when launching from Moodle, have you set the logging level to debug and inspected the requests being received and sent by your tool? Have you checked the time set on your server?
from lti-php.
Thank you for your help. This should help get our tool working in the IMS reference implementation for additional testing. I will look into additional debugging for moodle and checking the time on the servers.
from lti-php.
Good luck with your debugging. It is probably not of any use to you, but I have added a "Use GET for authentication request messages?" option to the saLTIre tool to allow users to override the use of POST when sending authentication requests to platforms. I am undecided about whether to add such an option to this library - I have never come across any other platforms which do not support POST requests to this endpoint. Support for both GET and POST is required by both the IMS LTI 1.3 spec and the Open ID Connect spec on which it is based.
from lti-php.
Related Issues (20)
- How do I get student results from the third party after completing the course ? HOT 22
- Canvas authorize_redirect request never goes out HOT 10
- Can we mask the request URL when validating the OAuth signature? (lti 1.2) HOT 2
- array_merge_recursive throws off OAuth1 Signature when GET and POST keys are duplicated HOT 6
- Grade Passback HOT 4
- Assignment and Grade Services (AGS) OAuth2.0 Access Token Request and Storage HOT 2
- User.php - can the hasRole() function be public? HOT 5
- Update to PHP 8.1 HOT 4
- no responseJson on getAll lineItem request from context HOT 9
- Unable to verify JWT signature HOT 8
- Wrong use statement in UserResult HOT 1
- wrong return url for database connection errors for ContentItemSelectionRequest launches HOT 2
- Add ability to disable draft/pre-beta specifications HOT 1
- PHP 8 support HOT 7
- LTI launches can be blocked by popup blockers due to lack of human interaction HOT 14
- Internationalisation?
- Roles mangled by Membership service due to hardcoded LTI version HOT 2
- System::parseRoles fails to parse institution-level roles in LTI 1.3 HOT 2
- how can I extract $http->response after calling the send method ? HOT 32
- GET as Login Initiation URL HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lti-php.