- Allowed setting custom JWT TTL
- Fixed AUD claim validation in
LtiServiceClient
- Fixed empty validation key assignment to the security configuration
LtiMessage
auto submit script wrapped bywindow.onload
callback
- Add LtiSystemRole supporting TestUser role
- Added MessagePayloadClaimsExtractor to ease message claims extraction
- Updated documentation
- Extended psr/log dependency versions
- Extended psr/cache dependency versions
- Fixed CVE-2021-41106 issue
- Added submission review service support (validator and claims)
- Added proctoring end assessment message tool launch validator support
- Fixed issue #128
- Added claim support for proctoring end assessment message
- Fixed issue #119
- Added migration guide to document breaking changes and migration steps
- Added LaunchValidatorInterface, PlatformLaunchValidatorInterface and ToolLaunchValidatorInterface
- Added AccessTokenResponseGeneratorInterface
- Added RequestAccessTokenValidatorInterface and RequestAccessTokenValidationResultInterface
- Moved PlatformLaunchValidator in Platform sub namespace
- Moved ToolLaunchValidator in Tool sub namespace
- Fixed LtiServiceServer media type handling
- Fixed LtiServiceClient grant assertion aud claim
- Fixed AgsClaim with not mandatory line item container url
- Fixed OAuth2 token validation to support multiple audiences
- Fixed proctoring start assessment message validator with resource link check
- Updated LtiServiceServerRequestHandlerInterface signature
- Updated Guzzle dependency to ^6.5 || ^7.0
- Updated documentation
- Fixed CVE-2021-30130 issue
- Added migration guide to document breaking changes and migration steps
- Added psalm support
- Added support of nullable error for Result based classes
- Added LtiServiceServer component to ease providing LTI services
- Moved Service\Server namespace into Security\OAuth2
- Moved UserAuthenticationResultInterface in Result sub namespace
- Moved UserAuthenticationResult in Result sub namespace
- Renamed JwksServer into JwksRequestHandler
- Renamed OidcInitiationServer into OidcInitiationRequestHandler
- Renamed OidcAuthenticationServer into OidcAuthenticationRequestHandler
- Renamed AccessTokenRequestValidator into RequestAccessTokenValidator
- Renamed AccessTokenRequestValidatorResult into RequestAccessTokenValidatorResult
- Renamed ServiceClientInterface into LtiServiceClientInterface
- Renamed ServiceClient into LtiServiceClient
- Fixed globally nullable parameters for classes constructors
- Fixed deprecated legacy user identifier claim
- Updated UserAuthenticatorInterface signature
- Updated documentation
- Added enhanced role management: type (system, institution, context), core / non core, long / short names & automatic validation
- Updated LtiMessagePayloadInterface with getValidatedRoleCollection() method (allows easy access to validated roles from launches)
- Updated documentation
- Added invalid access token cache busting on 401 LTI service response (with auto retry)
- Added migration guide to document breaking changes and migration steps
- Added PHP 8 support (and kept >=7.2)
- Added algorithms support for RS384/512, HS256/384/512, ES256/384/512 (on top of RS256)
- Added wrapper interfaces for JWT handling (builder, parser, validator), with default implementation based on lcobucci/jwt
- Added multiple audiences support in JWT handling
- Added collection, result and ids generator utils
- Added more security testing tools
- Fixed issue #74
- Fixed ServiceClient to work with 201 access token endpoint response
- Updated documentation
- Updated the version of ramsey/uuid dependency to allow the use of version 4
- Added OidcTestingTrait to ease OIDC based testing flows
- Fixed lcobucci/jwt dependency to version 3.3.3
- Added fallback to JWKS lookup to check URL if key is not found in cache
- Added possibility to specify allowed scopes for service calls validation
- Fixed service client repository audience check
- Updated documentation
- Fixed DeepLinkingSettingsClaim boolean properties handling (select multiple, auto create)
- Added PSR15 support for OIDC (init and auth) server components
- Added possibility to reset the MessagePayloadBuilder to allow multiple generation
- Added possibility to add several claims at once on the MessagePayloadBuilder
- Added tool originating DeepLinking response messages stronger validation (on settings data claim)
- Updated documentation
- Added Travis integration
- Added claims handling for DeepLinking, ACS, and Proctoring
- Added PSR7 aware components to automate JWKS and OIDC (init and auth) exposition
- Added content item resources for DeepLinking (form DeepLinking specifications)
- Added new core message layer foundations (new interfaces and abstractions)
- Added core tool originating message layer (builder, validator, result) based on new foundations
- Reworked (breaking changes) core platform originating message layer (builder, validator, result) based on new foundations
- Fixed issue #46
- Updated php dependency to >= 7.2.0
- Updated phpunit dependency to 8.5.8
- Updated documentation
- Added Basic Outcome claim handling
- Added UserIdentityFactoryInterface
- Added NRPS claim getter on LtiMessageInterface
- Added UserIdentityFactory
- Added additional properties handling to the UserIdentity
- Added NRPS claim handling
- Adapted JWT validations to test expiry first, to spare useless checks
- Adapted tool message validator to match IMS certification requirements
- Fixed ServiceClient access tokens caching scoping
- Fixed JwksExporter output structure
- Fixed OidcAuthenticationRequest parameters exposition
- Fixed ServiceClient header
- Updated AccessTokenResponseGenerator to generate for a key chain instead of a registration
- Added getOidcState() method to LtiLaunchRequestValidationResult
- Added findAll() method to RegistrationRepositoryInterface
- Provided core messages implementation and documentation
- Provided core services implementation and documentation