oat-sa / extension-tao-lti
extension to manage LTI services for TAO
Installs: 80 848
Dependents: 11
Suggesters: 0
Security: 0
Stars: 4
Watchers: 48
Forks: 4
Type:tao-extension
Requires
- php: ~8
- ext-openssl: *
- guzzlehttp/guzzle: ^6.5 || ^7.0
- oat-sa/generis: >=16.0.0
- oat-sa/lib-lti1p3-ags: ~2
- oat-sa/lib-lti1p3-core: ~7.1
- oat-sa/oatbox-extension-installer: ~1.1||dev-master
- oat-sa/tao-core: >=54.26.0
- dev-master
- v16.2.1
- v16.2.0
- v16.1.0
- v16.0.0
- v15.19.6
- v15.19.5
- v15.19.4
- v15.19.3
- v15.19.2
- v15.19.1
- v15.19.0
- v15.18.0
- v15.17.1
- v15.17.0
- v15.16.0
- v15.15.0.1
- v15.15.0
- v15.14.1
- v15.14.0
- 15.13.4.1
- v15.13.4
- v15.13.3
- v15.13.2
- v15.13.1
- v15.13.0
- v15.12.2
- v15.12.1
- v15.12.0
- v15.11.3
- v15.11.2
- v15.11.1.1
- v15.11.1
- v15.11.0
- v15.10.0
- v15.9.2
- v15.9.1
- v15.9.0
- v15.8.4
- v15.8.3
- v15.8.2
- v15.8.1
- v15.8.0
- v15.7.1
- v15.7.0
- v15.6.2
- v15.6.1
- v15.6.0
- v15.5.0
- v15.4.1
- v15.4.0
- v15.3.0
- v15.2.0
- v15.1.1
- v15.1.0
- v15.0.0
- v14.0.0
- v13.2.2
- v13.2.1
- v13.2.0
- v13.1.0
- v13.0.1
- v13.0.0
- v12.2.0
- v12.1.0
- v12.0.2
- v12.0.1.1
- v12.0.1
- v12.0.0
- v11.14.0.1
- v11.14.0
- v11.12.0.1
- v11.12.0
- v11.11.1
- v11.10.2
- v11.8.3
- v11.8.2
- v11.7.2
- v11.7.1
- v11.7.0
- v11.3.1
- v11.3.0
- v11.2.1
- v11.2.0.1
- v11.2.0
- v11.1.1
- v10.9.0
- v10.7.0
- v10.5.3.2
- v10.5.3.1
- v10.5.3
- v10.4.1
- v10.3.1
- v10.2.0
- v10.1.0
- v10.0.0
- v9.2.1.1
- v9.2.1
- v9.2.0
- v9.0.0
- v8.6.2
- v8.6.1
- v8.6.0
- v8.5.0
- v8.0.3
- v8.0.2
- v8.0.1
- v8.0.0.1
- v8.0.0
- v7.3.1
- v7.3.0
- v7.1.0
- v6.7.0
- v6.4.2
- v6.4.0
- v6.3.3
- v6.3.2
- v6.3.1
- v6.3.0
- v6.2.0
- v6.1.1
- v6.1.0
- v6.0.1
- v6.0.0
- v4.2.0
- v4.1.1
- v4.1.0
- v4.0.0
- v3.7.3
- v3.7.2
- v3.7.1
- v3.7.0
- v3.5.3
- v3.5.2
- v3.5.1
- v3.4.3
- v3.4.2
- v3.4.1
- v3.4.0
- v3.3.1
- v3.2.4
- v3.2.3
- v3.2.1
- v3.2.0
- v3.1.0
- v3.0.0
- v2.0.0
- v1.11.0
- v1.9.0
- v1.7.1
- v1.5.2
- v1.5.1
- v1.5.0
- v1.4.1
- v1.4.0
- v1.2.1
- v1.2.0
- v1.1
- v1.0.2
- v1.0.1
- v1.0
- 1.0-beta2
- 1.0-beta
- dev-develop
- dev-release-16.2.1
- dev-release-16.2.0
- dev-feat/ADF-1842/add-extra-roles-portal-users
- dev-fix/AUT-3968/bad-request-status-code
- dev-feat/REL-1766/workflow-update
- dev-fix/AUT-3398/fix-rdf-import-for-lti-consumers
- dev-fix/REL-1592/fix-anonymous-user-type-for-lti
- dev-fix/SOLAR-624/add-reviewer-role-to-content-developer
- dev-feature/RFE-947/integration-test
- dev-backport/SOLAR-624/backport-to-v15.15.0.2
- dev-backport/v15.17.1
- dev-backport/MS-2756/backport-feature-to-v15.17.1
- dev-feature/MS-2756/add-userpilot-to-tao-3.x
- dev-backport/v15.15.0.1
- dev-backport/v15.15.0.2
- dev-backport/MS-2756/backport-feature-to-v15.15.0.1
- dev-feat/REL-1466/publish-to-two-solar-tenants-fix
- dev-backport/v15.13.4.1
- dev-fix/REL-1174/fixed-range-value
- dev-fix/ADF-1075/do-not-allow-to-import-classes-on-lti-consumer
- dev-fix/update-autoRelease-action-with-bot-user
- dev-release/15.12.2
- dev-fix/SOLAR-59/redirect-to-items-extension-as-default
- dev-release-15.11.1.1
- dev-hotfix/AUT-2995/add-brazilian-portuguese-language
- dev-release-15.12.0
- dev-bug/REL-1101/lti1p3-guest-lang
- dev-feature/demo-lti1p3
- dev-mpdeploy
This package is auto-updated.
Last update: 2024-12-04 13:18:34 UTC
README
Extension to manage LTI services for TAO
Installation instructions
These instructions assume that you have already a TAO installation on your system. If you don't, go to package/tao and follow the installation instructions.
If you installed your TAO instance through package/tao,
oat-sa/extension-tao-lti
is very likely already installed. You can verify this under Settings -> Extension
manager, where it would appear on the left hand side as taoLti
. Alternatively you would find it in
the code at /config/generis/installation.conf.php
.
Note, that you have to be logged in as System Administrator to do this.
Add the extension to your TAO composer and to the autoloader:
composer require oat-sa/extension-tao-lti
Install the extension on the CLI from the project root:
Linux:
sudo php tao/scripts/installExtension oat-sa/extension-tao-lti
Windows:
php tao\scripts\installExtension oat-sa/extension-tao-lti
As a system administrator you can also install it through the TAO Extension Manager:
- Settings (the gears on the right hand side of the menu) -> Extension manager
- Select taoLti on the right hand side, check the box and hit install
REST API
Configuration options
ServiceOptions.conf.php
Description: this specifies LTI client configuration.
If the configuration file is not present as
../config/generis/ServiceOptions.conf.php
, create it by copying from
../generis/config/default/ServiceOptions.conf.php
.
Example
<?php return new oat\generis\model\DependencyInjection\ServiceOptions( [ oat\taoLti\models\classes\Client\LtiClientFactory::class => [ 'config' => [ // This configuration accepts 'proxy' => [ // [Guzzle Request Options](https://docs.guzzlephp.org/en/stable/request-options.html) 'http' => 'http://localhost:8125', 'https' => 'https://localhost:9124', ], ], ], ] );
auth.conf.php
Configuration option config
Description: this specifies a single option as the adapter
key of the array. This adapter is to be used to authenticate LTI requests and is retrieved in FactoryLtiAuthAdapterService.
Possible values of the adapter
key:
- an instance of any class that implements the
common_user_auth_Adapter
interface
Value examples:
['config' => ['adapter' => 'oat\\taoLti\\models\\classes\\LtiAuthAdapter']]
CookieVerifyService.conf.php
Configuration option verify_cookie
Description: This option determine whether to check if the 'session' request parameter matches the internal PHP session ID before launching an LTI tool
Possible values:
true
: enable the session check. 2 more HTTP redirects are neededfalse
: disable the session check
LtiUserService.conf.php
Configuration option factoryLtiUser
Description: factory for producing LTI users
Possible values:
- an instance of any class that implements the
oat\taoLti\models\classes\user\LtiUserFactoryInterface
interface
Configuration option transaction-safe
(only for OntologyLtiUserService
implementation)
Description: not used
Configuration option transaction-safe-retry
(only for OntologyLtiUserService
implementation)
Description: not used
Configuration option lti_ku_
(only for KvLtiUserService
implementation)
Description: a prefix for storing taoId
=> ltiId
relation in the key-value storage to look up LTI users
Possible values:
- any unique string
Configuration option lti_ku_lkp_
(only for KvLtiUserService
implementation)
Description: a prefix for storing ltiId
=> taoId
relation in the key-value storage to execute reverse lookup
Possible values:
- any unique string
LtiValidatorService.conf.php
Configuration option launchDataValidator
Description: specifies a list of validators to be used for validating LTI launch data
Possible values:
- a list of instances of any classes that implement the
LtiValidatorInterface
interface. Validators should throwLtiException
in case of not valid data, return values are not considered
Value examples:
[ new oat\taoLti\models\classes\LaunchData\Validator\Lti11LaunchDataValidator() ]
Dependency Injection Service Providers
LtiServiceProvider
Configuration for AuthorizationServerFactory
Extension Wiki
You can find the extension wiki here.