Download the PHP package teamgantt/juhwit without Composer
On this page you can find all versions of the php package teamgantt/juhwit. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package juhwit
Juhwit
Verify JWT's from AWS Cognito
Usage
Juhwit ships with a handful of interfaces and their default implementations.
The main service provided by Juhwit is the JwtDecoder which is composed with the complimentary CognitoClaimVerifier.
Requiring extra claims
A token may be required to have certain claims.
If you want to require claims, such as custom:foo or custom:user, you can require those by providing a second argument to the decode method.
It is also possible to require claim values to be a specific value.
Keep in mind that instances of Token will perform their own checks against required claims. See TeamGantt\Juhwit\Models\Token::getClaimsErrors() for more information.
Customizing token creation
Juhwit provides a default implementations for id tokens and access tokens. After a jwt is verified against
a public key, the claims and user provided $requiredClaims are passed to the create method of a TokenFactoryInterface.
The default CognitoTokenFactory will return an IdToken or AccessToken depending on the token type provided. When constructing the JwtDecoder
a custom TokenFactoryInterface can be passed to the constructor.
This factory can be used to create custom tokens - the only requirement is that the create method returns a TokenInterface. Any TokenExceptions thrown
by the factory will be caught and the token will be considered invalid.
Leveraging docker
Juhwit is tested and developed against PHP 7.4.11. This project uses a combination of docker and direnv
to keep a consistent environment. To leverage direnv, cd into the juhwit project directory and run the following:
This will put your current terminal into an environment that uses the dockerized php and composer binaries. You can use them like you normally would i.e: