From e55562c4cd7495d120e492a93454606e5f98543e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Sat, 7 Jan 2023 21:11:01 +0100 Subject: [PATCH] Feature: install lexik jwt and configuration --- .env | 6 + .gitignore | 4 + composer.json | 5 +- composer.lock | 558 +++++++++++++++--- config/bundles.php | 1 + config/packages/lexik_jwt_authentication.yaml | 4 + symfony.lock | 12 + 7 files changed, 508 insertions(+), 82 deletions(-) create mode 100644 config/packages/lexik_jwt_authentication.yaml diff --git a/.env b/.env index 16f6fff..5e82c42 100644 --- a/.env +++ b/.env @@ -81,3 +81,9 @@ MESSENGER_TRANSPORT_DSN=sync:// # DATABASE_URL="postgresql://postgres:postgres@db:5432/postgres?serverVersion=14&charset=utf8" ###< doctrine/doctrine-bundle ### + +###> lexik/jwt-authentication-bundle ### +JWT_SECRET_KEY=%kernel.project_dir%/config/jwt/private.pem +JWT_PUBLIC_KEY=%kernel.project_dir%/config/jwt/public.pem +JWT_PASSPHRASE=2a30f6ba26521a2613821da35f28386e +###< lexik/jwt-authentication-bundle ### diff --git a/.gitignore b/.gitignore index a4b0b03..7fb07d6 100644 --- a/.gitignore +++ b/.gitignore @@ -75,3 +75,7 @@ yarn-error.log docker-compose.override.yml docker-compose.override.yaml + +###> lexik/jwt-authentication-bundle ### +/config/jwt/*.pem +###< lexik/jwt-authentication-bundle ### diff --git a/composer.json b/composer.json index 04b87f7..6375ae2 100644 --- a/composer.json +++ b/composer.json @@ -15,7 +15,7 @@ }, "require": { "ext-redis": "*", - "chill-project/chill-bundles": "dev-master#bbd2599e7e6040c7090bfb11bc2f913b5a73d5e4", + "chill-project/chill-bundles": "dev-43-wopi-use-access-token@dev", "symfony/flex": "^1.9", "symfony/http-client": "^4.4 || ^5", "nelmio/alice": "^3.8", @@ -23,7 +23,8 @@ "phpstan/phpstan": "^1.0", "spomky-labs/base64url": "^2.0", "twig/string-extra": "^3.3", - "symfony/mailer": "^5.4" + "symfony/mailer": "^5.4", + "symfony/dependency-injection": "5.4.16" }, "require-dev": { "fakerphp/faker": "^1.13", diff --git a/composer.lock b/composer.lock index 71fcd05..88ec16f 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "579aaf96d9d506c029dc6d995514e006", + "content-hash": "57988d54c6c04536327aec17e4dbee41", "packages": [ { "name": "brick/math", @@ -115,12 +115,12 @@ "source": { "type": "git", "url": "https://github.com/Champs-Libres/wopi-bundle.git", - "reference": "6dd8e0a14e00131eb4b889ecc30270ee4a0e5224" + "reference": "ca186815d8619befd473b656e76da8bb6a2c1b26" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Champs-Libres/wopi-bundle/zipball/6dd8e0a14e00131eb4b889ecc30270ee4a0e5224", - "reference": "6dd8e0a14e00131eb4b889ecc30270ee4a0e5224", + "url": "https://api.github.com/repos/Champs-Libres/wopi-bundle/zipball/ca186815d8619befd473b656e76da8bb6a2c1b26", + "reference": "ca186815d8619befd473b656e76da8bb6a2c1b26", "shasum": "" }, "require": { @@ -138,7 +138,11 @@ "drupol/php-conventions": "^5.0", "friends-of-phpspec/phpspec-code-coverage": "^6.1", "nyholm/psr7": "^1.4", - "phpspec/phpspec": "^7.1" + "phpspec/phpspec": "^7.1", + "phpspec/prophecy": "^1.16", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.5", + "symfony/phpunit-bridge": "^6.2" }, "default-branch": true, "type": "symfony-bundle", @@ -161,7 +165,7 @@ "issues": "https://github.com/Champs-Libres/wopi-bundle/issues", "source": "https://github.com/Champs-Libres/wopi-bundle/tree/master" }, - "time": "2022-06-20T19:12:29+00:00" + "time": "2023-01-07T17:11:27+00:00" }, { "name": "champs-libres/wopi-lib", @@ -169,12 +173,12 @@ "source": { "type": "git", "url": "https://github.com/Champs-Libres/wopi-lib.git", - "reference": "8615f4a45a39fc2b6a98765ea835fcfd39618787" + "reference": "5d931452320d5f9534c4fa8904af8789d6001546" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Champs-Libres/wopi-lib/zipball/8615f4a45a39fc2b6a98765ea835fcfd39618787", - "reference": "8615f4a45a39fc2b6a98765ea835fcfd39618787", + "url": "https://api.github.com/repos/Champs-Libres/wopi-lib/zipball/5d931452320d5f9534c4fa8904af8789d6001546", + "reference": "5d931452320d5f9534c4fa8904af8789d6001546", "shasum": "" }, "require": { @@ -220,35 +224,39 @@ "issues": "https://github.com/champs-libres/wopi-lib/issues", "source": "https://github.com/champs-libres/wopi-lib" }, - "time": "2022-06-20T19:09:33+00:00" + "time": "2022-12-29T23:21:56+00:00" }, { "name": "chill-project/chill-bundles", - "version": "dev-master", + "version": "dev-43-wopi-use-access-token", "source": { "type": "git", "url": "git@gitlab.com:Chill-Projet/chill-bundles.git", - "reference": "bbd2599e7e6040c7090bfb11bc2f913b5a73d5e4" + "reference": "e542ebe531093361ff68020f943497c84a748b30" }, "dist": { "type": "zip", - "url": "https://gitlab.com/api/v4/projects/Chill-Projet%2Fchill-bundles/repository/archive.zip?sha=bbd2599e7e6040c7090bfb11bc2f913b5a73d5e4", - "reference": "bbd2599e7e6040c7090bfb11bc2f913b5a73d5e4", + "url": "https://gitlab.com/api/v4/projects/Chill-Projet%2Fchill-bundles/repository/archive.zip?sha=e542ebe531093361ff68020f943497c84a748b30", + "reference": "e542ebe531093361ff68020f943497c84a748b30", "shasum": "" }, "require": { "champs-libres/async-uploader-bundle": "dev-sf4#d57134aee8e504a83c902ff0cf9f8d36ac418290", - "champs-libres/wopi-bundle": "dev-master#6dd8e0a14e00131eb4b889ecc30270ee4a0e5224", - "champs-libres/wopi-lib": "dev-master#8615f4a45a39fc2b6a98765ea835fcfd39618787", + "champs-libres/wopi-bundle": "dev-master@dev", + "champs-libres/wopi-lib": "dev-master@dev", "doctrine/doctrine-bundle": "^2.1", "doctrine/doctrine-migrations-bundle": "^3.0", - "doctrine/orm": "^2.7", + "doctrine/orm": "^2.13.0", "erusev/parsedown": "^1.7", + "ext-json": "*", + "ext-openssl": "*", + "ext-redis": "*", "graylog2/gelf-php": "^1.5", "knplabs/knp-menu-bundle": "^3.0", "knplabs/knp-time-bundle": "^1.12", "knpuniversity/oauth2-client-bundle": "^2.10", "league/csv": "^9.7.1", + "lexik/jwt-authentication-bundle": "^2.16", "nyholm/psr7": "^1.4", "ocramius/package-versions": "^1.10 || ^2", "odolbeau/phone-number-bundle": "^3.6", @@ -258,12 +266,12 @@ "ramsey/uuid-doctrine": "^1.7", "sensio/framework-extra-bundle": "^5.5", "spomky-labs/base64url": "^2.0", - "symfony/asset": "^4.4", "symfony/browser-kit": "^4.4", "symfony/css-selector": "^4.4", "symfony/expression-language": "^4.4", "symfony/form": "^4.4", "symfony/framework-bundle": "^4.4", + "symfony/http-client": "^4.4 || ^5", "symfony/http-foundation": "^4.4", "symfony/intl": "^4.4", "symfony/mailer": "^5.4", @@ -304,10 +312,8 @@ "symfony/maker-bundle": "^1.20", "symfony/phpunit-bridge": "^4.4", "symfony/stopwatch": "^4.4", - "symfony/var-dumper": "^4.4", - "symfony/web-profiler-bundle": "^4.4" + "symfony/var-dumper": "^4.4" }, - "default-branch": true, "type": "library", "autoload": { "psr-4": { @@ -337,7 +343,7 @@ "chill", "social worker" ], - "time": "2022-12-26T23:09:45+00:00" + "time": "2023-01-07T20:03:58+00:00" }, { "name": "composer/package-versions-deprecated", @@ -1280,30 +1286,30 @@ }, { "name": "doctrine/instantiator", - "version": "1.4.1", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc" + "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b", + "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b", "shasum": "" }, "require": { "php": "^7.1 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9", + "doctrine/coding-standard": "^9 || ^11", "ext-pdo": "*", "ext-phar": "*", "phpbench/phpbench": "^0.16 || ^1", "phpstan/phpstan": "^1.4", "phpstan/phpstan-phpunit": "^1", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.22" + "vimeo/psalm": "^4.30 || ^5.4" }, "type": "library", "autoload": { @@ -1330,7 +1336,7 @@ ], "support": { "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.1" + "source": "https://github.com/doctrine/instantiator/tree/1.5.0" }, "funding": [ { @@ -1346,35 +1352,37 @@ "type": "tidelift" } ], - "time": "2022-03-03T08:28:38+00:00" + "time": "2022-12-30T00:15:36+00:00" }, { "name": "doctrine/lexer", - "version": "1.2.3", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229" + "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/39ab8fcf5a51ce4b85ca97c7a7d033eb12831124", + "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124", "shasum": "" }, "require": { + "doctrine/deprecations": "^1.0", "php": "^7.1 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9.0", + "doctrine/coding-standard": "^9 || ^10", "phpstan/phpstan": "^1.3", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.11" + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^4.11 || ^5.0" }, "type": "library", "autoload": { "psr-4": { - "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" + "Doctrine\\Common\\Lexer\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -1406,7 +1414,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.3" + "source": "https://github.com/doctrine/lexer/tree/2.1.0" }, "funding": [ { @@ -1422,7 +1430,7 @@ "type": "tidelift" } ], - "time": "2022-02-28T11:07:21+00:00" + "time": "2022-12-14T08:49:07+00:00" }, { "name": "doctrine/migrations", @@ -1786,25 +1794,24 @@ }, { "name": "egulias/email-validator", - "version": "3.2.1", + "version": "3.2.5", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "f88dcf4b14af14a98ad96b14b2b317969eab6715" + "reference": "b531a2311709443320c786feb4519cfaf94af796" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/f88dcf4b14af14a98ad96b14b2b317969eab6715", - "reference": "f88dcf4b14af14a98ad96b14b2b317969eab6715", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/b531a2311709443320c786feb4519cfaf94af796", + "reference": "b531a2311709443320c786feb4519cfaf94af796", "shasum": "" }, "require": { - "doctrine/lexer": "^1.2", + "doctrine/lexer": "^1.2|^2", "php": ">=7.2", "symfony/polyfill-intl-idn": "^1.15" }, "require-dev": { - "php-coveralls/php-coveralls": "^2.2", "phpunit/phpunit": "^8.5.8|^9.3.3", "vimeo/psalm": "^4" }, @@ -1842,7 +1849,7 @@ ], "support": { "issues": "https://github.com/egulias/EmailValidator/issues", - "source": "https://github.com/egulias/EmailValidator/tree/3.2.1" + "source": "https://github.com/egulias/EmailValidator/tree/3.2.5" }, "funding": [ { @@ -1850,7 +1857,7 @@ "type": "github" } ], - "time": "2022-06-18T20:57:19+00:00" + "time": "2023-01-02T17:26:14+00:00" }, { "name": "erusev/parsedown", @@ -3224,6 +3231,141 @@ ], "time": "2022-10-10T10:11:09+00:00" }, + { + "name": "lcobucci/clock", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/clock.git", + "reference": "353d83fe2e6ae95745b16b3d911813df6a05bfb3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/clock/zipball/353d83fe2e6ae95745b16b3d911813df6a05bfb3", + "reference": "353d83fe2e6ae95745b16b3d911813df6a05bfb3", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "infection/infection": "^0.17", + "lcobucci/coding-standard": "^6.0", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-deprecation-rules": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpstan/phpstan-strict-rules": "^0.12", + "phpunit/php-code-coverage": "9.1.4", + "phpunit/phpunit": "9.3.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "Lcobucci\\Clock\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Luís Cobucci", + "email": "lcobucci@gmail.com" + } + ], + "description": "Yet another clock abstraction", + "support": { + "issues": "https://github.com/lcobucci/clock/issues", + "source": "https://github.com/lcobucci/clock/tree/2.0.x" + }, + "funding": [ + { + "url": "https://github.com/lcobucci", + "type": "github" + }, + { + "url": "https://www.patreon.com/lcobucci", + "type": "patreon" + } + ], + "time": "2020-08-27T18:56:02+00:00" + }, + { + "name": "lcobucci/jwt", + "version": "4.3.0", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/jwt.git", + "reference": "4d7de2fe0d51a96418c0d04004986e410e87f6b4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/4d7de2fe0d51a96418c0d04004986e410e87f6b4", + "reference": "4d7de2fe0d51a96418c0d04004986e410e87f6b4", + "shasum": "" + }, + "require": { + "ext-hash": "*", + "ext-json": "*", + "ext-mbstring": "*", + "ext-openssl": "*", + "ext-sodium": "*", + "lcobucci/clock": "^2.0 || ^3.0", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "infection/infection": "^0.21", + "lcobucci/coding-standard": "^6.0", + "mikey179/vfsstream": "^1.6.7", + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.4", + "phpstan/phpstan-deprecation-rules": "^1.0", + "phpstan/phpstan-phpunit": "^1.0", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/php-invoker": "^3.1", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Lcobucci\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Luís Cobucci", + "email": "lcobucci@gmail.com", + "role": "Developer" + } + ], + "description": "A simple library to work with JSON Web Token and JSON Web Signature", + "keywords": [ + "JWS", + "jwt" + ], + "support": { + "issues": "https://github.com/lcobucci/jwt/issues", + "source": "https://github.com/lcobucci/jwt/tree/4.3.0" + }, + "funding": [ + { + "url": "https://github.com/lcobucci", + "type": "github" + }, + { + "url": "https://www.patreon.com/lcobucci", + "type": "patreon" + } + ], + "time": "2023-01-02T13:28:00+00:00" + }, { "name": "league/csv", "version": "9.8.0", @@ -3378,6 +3520,126 @@ }, "time": "2021-12-22T16:42:49+00:00" }, + { + "name": "lexik/jwt-authentication-bundle", + "version": "v2.16.0", + "source": { + "type": "git", + "url": "https://github.com/lexik/LexikJWTAuthenticationBundle.git", + "reference": "0a0922a2442c52724c09deb099b263300cc12d54" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lexik/LexikJWTAuthenticationBundle/zipball/0a0922a2442c52724c09deb099b263300cc12d54", + "reference": "0a0922a2442c52724c09deb099b263300cc12d54", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "lcobucci/jwt": "^3.4|^4.0", + "namshi/jose": "^7.2", + "php": ">=7.1", + "symfony/config": "^4.4|^5.3|^6.0", + "symfony/dependency-injection": "^4.4|^5.3|^6.0", + "symfony/deprecation-contracts": "^2.4|^3.0", + "symfony/event-dispatcher": "^4.4|^5.3|^6.0", + "symfony/http-foundation": "^4.4|^5.3|^6.0", + "symfony/http-kernel": "^4.4|^5.3|^6.0", + "symfony/property-access": "^4.4|^5.3|^6.0", + "symfony/security-bundle": "^4.4|^5.3|^6.0", + "symfony/security-core": "^4.4|^5.3|^6.0", + "symfony/security-http": "^4.4|^5.3|^6.0", + "symfony/translation-contracts": "^1.0|^2.0|^3.0" + }, + "conflict": { + "symfony/console": "<4.4" + }, + "require-dev": { + "symfony/browser-kit": "^4.4|^5.3|^6.0", + "symfony/console": "^4.4|^5.3|^6.0", + "symfony/dom-crawler": "^4.4|^5.3|^6.0", + "symfony/filesystem": "^4.4|^5.3|^6.0", + "symfony/framework-bundle": "^4.4|^5.3|^6.0", + "symfony/phpunit-bridge": "^4.4|^5.3|^6.0", + "symfony/security-guard": "^4.4|^5.3", + "symfony/var-dumper": "^4.4|^5.3|^6.0", + "symfony/yaml": "^4.4|^5.3|^6.0" + }, + "suggest": { + "gesdinet/jwt-refresh-token-bundle": "Implements a refresh token system over Json Web Tokens in Symfony", + "spomky-labs/lexik-jose-bridge": "Provides a JWT Token encoder with encryption support" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Lexik\\Bundle\\JWTAuthenticationBundle\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jeremy Barthe", + "email": "j.barthe@lexik.fr", + "homepage": "https://github.com/jeremyb" + }, + { + "name": "Nicolas Cabot", + "email": "n.cabot@lexik.fr", + "homepage": "https://github.com/slashfan" + }, + { + "name": "Cedric Girard", + "email": "c.girard@lexik.fr", + "homepage": "https://github.com/cedric-g" + }, + { + "name": "Dev Lexik", + "email": "dev@lexik.fr", + "homepage": "https://github.com/lexik" + }, + { + "name": "Robin Chalas", + "email": "robin.chalas@gmail.com", + "homepage": "https://github.com/chalasr" + }, + { + "name": "Lexik Community", + "homepage": "https://github.com/lexik/LexikJWTAuthenticationBundle/graphs/contributors" + } + ], + "description": "This bundle provides JWT authentication for your Symfony REST API", + "homepage": "https://github.com/lexik/LexikJWTAuthenticationBundle", + "keywords": [ + "Authentication", + "JWS", + "api", + "bundle", + "jwt", + "rest", + "symfony" + ], + "support": { + "issues": "https://github.com/lexik/LexikJWTAuthenticationBundle/issues", + "source": "https://github.com/lexik/LexikJWTAuthenticationBundle/tree/v2.16.0" + }, + "funding": [ + { + "url": "https://github.com/chalasr", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/lexik/jwt-authentication-bundle", + "type": "tidelift" + } + ], + "time": "2022-06-12T16:22:12+00:00" + }, { "name": "loophp/psr-http-message-bridge-bundle", "version": "1.0.0", @@ -3929,6 +4191,73 @@ ], "time": "2022-08-04T09:53:51+00:00" }, + { + "name": "namshi/jose", + "version": "7.2.3", + "source": { + "type": "git", + "url": "https://github.com/namshi/jose.git", + "reference": "89a24d7eb3040e285dd5925fcad992378b82bcff" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/namshi/jose/zipball/89a24d7eb3040e285dd5925fcad992378b82bcff", + "reference": "89a24d7eb3040e285dd5925fcad992378b82bcff", + "shasum": "" + }, + "require": { + "ext-date": "*", + "ext-hash": "*", + "ext-json": "*", + "ext-pcre": "*", + "ext-spl": "*", + "php": ">=5.5", + "symfony/polyfill-php56": "^1.0" + }, + "require-dev": { + "phpseclib/phpseclib": "^2.0", + "phpunit/phpunit": "^4.5|^5.0", + "satooshi/php-coveralls": "^1.0" + }, + "suggest": { + "ext-openssl": "Allows to use OpenSSL as crypto engine.", + "phpseclib/phpseclib": "Allows to use Phpseclib as crypto engine, use version ^2.0." + }, + "type": "library", + "autoload": { + "psr-4": { + "Namshi\\JOSE\\": "src/Namshi/JOSE/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alessandro Nadalin", + "email": "alessandro.nadalin@gmail.com" + }, + { + "name": "Alessandro Cinelli (cirpo)", + "email": "alessandro.cinelli@gmail.com" + } + ], + "description": "JSON Object Signing and Encryption library for PHP.", + "keywords": [ + "JSON Web Signature", + "JSON Web Token", + "JWS", + "json", + "jwt", + "token" + ], + "support": { + "issues": "https://github.com/namshi/jose/issues", + "source": "https://github.com/namshi/jose/tree/master" + }, + "time": "2016-12-05T07:27:31+00:00" + }, { "name": "nelmio/alice", "version": "v3.9.0", @@ -4781,16 +5110,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.9.4", + "version": "1.9.7", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "d03bccee595e2146b7c9d174486b84f4dc61b0f2" + "reference": "0501435cd342eac7664bd62155b1ef907fc60b6f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/d03bccee595e2146b7c9d174486b84f4dc61b0f2", - "reference": "d03bccee595e2146b7c9d174486b84f4dc61b0f2", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/0501435cd342eac7664bd62155b1ef907fc60b6f", + "reference": "0501435cd342eac7664bd62155b1ef907fc60b6f", "shasum": "" }, "require": { @@ -4820,7 +5149,7 @@ ], "support": { "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/1.9.4" + "source": "https://github.com/phpstan/phpstan/tree/1.9.7" }, "funding": [ { @@ -4836,7 +5165,7 @@ "type": "tidelift" } ], - "time": "2022-12-17T13:33:52+00:00" + "time": "2023-01-04T21:59:57+00:00" }, { "name": "psr/cache", @@ -6170,25 +6499,26 @@ }, { "name": "symfony/asset", - "version": "v4.4.46", + "version": "v5.2.12", "source": { "type": "git", "url": "https://github.com/symfony/asset.git", - "reference": "6ef0f9f352f90c469e8b363ebc038d81a7198873" + "reference": "abe64fee9fa2978c730c84d0d6df760f2d9ddba0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/asset/zipball/6ef0f9f352f90c469e8b363ebc038d81a7198873", - "reference": "6ef0f9f352f90c469e8b363ebc038d81a7198873", + "url": "https://api.github.com/repos/symfony/asset/zipball/abe64fee9fa2978c730c84d0d6df760f2d9ddba0", + "reference": "abe64fee9fa2978c730c84d0d6df760f2d9ddba0", "shasum": "" }, "require": { - "php": ">=7.1.3", + "php": ">=7.2.5", "symfony/polyfill-php80": "^1.16" }, "require-dev": { - "symfony/http-foundation": "^3.4|^4.0|^5.0", - "symfony/http-kernel": "^3.4|^4.0|^5.0" + "symfony/http-client": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-kernel": "^4.4|^5.0" }, "suggest": { "symfony/http-foundation": "" @@ -6219,7 +6549,7 @@ "description": "Manages URL generation and versioning of web assets such as CSS stylesheets, JavaScript files and image files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/asset/tree/v4.4.46" + "source": "https://github.com/symfony/asset/tree/v5.2.12" }, "funding": [ { @@ -6235,7 +6565,7 @@ "type": "tidelift" } ], - "time": "2022-08-30T22:05:24+00:00" + "time": "2021-07-21T12:38:00+00:00" }, { "name": "symfony/browser-kit", @@ -6311,16 +6641,16 @@ }, { "name": "symfony/cache", - "version": "v5.4.17", + "version": "v5.4.18", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "d3f76803280505aac4bebf83e3b2ba1230dfe89d" + "reference": "a33fa08a3f37bb44b90e60b9028796d6b811f9ef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/d3f76803280505aac4bebf83e3b2ba1230dfe89d", - "reference": "d3f76803280505aac4bebf83e3b2ba1230dfe89d", + "url": "https://api.github.com/repos/symfony/cache/zipball/a33fa08a3f37bb44b90e60b9028796d6b811f9ef", + "reference": "a33fa08a3f37bb44b90e60b9028796d6b811f9ef", "shasum": "" }, "require": { @@ -6388,7 +6718,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v5.4.17" + "source": "https://github.com/symfony/cache/tree/v5.4.18" }, "funding": [ { @@ -6404,7 +6734,7 @@ "type": "tidelift" } ], - "time": "2022-12-22T15:14:34+00:00" + "time": "2022-12-29T16:06:09+00:00" }, { "name": "symfony/cache-contracts", @@ -6791,16 +7121,16 @@ }, { "name": "symfony/dependency-injection", - "version": "v5.4.17", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "58f2988128d2d278280781db037677a32cf720db" + "reference": "a93e1863500940780fc1235f52d54397be2d14b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/58f2988128d2d278280781db037677a32cf720db", - "reference": "58f2988128d2d278280781db037677a32cf720db", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/a93e1863500940780fc1235f52d54397be2d14b3", + "reference": "a93e1863500940780fc1235f52d54397be2d14b3", "shasum": "" }, "require": { @@ -6860,7 +7190,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v5.4.17" + "source": "https://github.com/symfony/dependency-injection/tree/v5.4.16" }, "funding": [ { @@ -6876,7 +7206,7 @@ "type": "tidelift" } ], - "time": "2022-12-28T13:55:51+00:00" + "time": "2022-11-25T07:33:13+00:00" }, { "name": "symfony/deprecation-contracts", @@ -9428,6 +9758,74 @@ ], "time": "2022-11-03T14:55:06+00:00" }, + { + "name": "symfony/polyfill-php56", + "version": "v1.20.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php56.git", + "reference": "54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675", + "reference": "54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "metapackage", + "extra": { + "branch-alias": { + "dev-main": "1.20-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 5.6+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php56/tree/v1.20.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-23T14:02:19+00:00" + }, { "name": "symfony/polyfill-php72", "version": "v1.27.0", @@ -12505,16 +12903,16 @@ }, { "name": "doctrine/data-fixtures", - "version": "1.6.1", + "version": "1.6.3", "source": { "type": "git", "url": "https://github.com/doctrine/data-fixtures.git", - "reference": "1a4232c15143ca3c127812d19b23a7961c41eeed" + "reference": "c27821d038e64f1bfc852a94064d65d2a75ad01f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/1a4232c15143ca3c127812d19b23a7961c41eeed", - "reference": "1a4232c15143ca3c127812d19b23a7961c41eeed", + "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/c27821d038e64f1bfc852a94064d65d2a75ad01f", + "reference": "c27821d038e64f1bfc852a94064d65d2a75ad01f", "shasum": "" }, "require": { @@ -12567,7 +12965,7 @@ ], "support": { "issues": "https://github.com/doctrine/data-fixtures/issues", - "source": "https://github.com/doctrine/data-fixtures/tree/1.6.1" + "source": "https://github.com/doctrine/data-fixtures/tree/1.6.3" }, "funding": [ { @@ -12583,7 +12981,7 @@ "type": "tidelift" } ], - "time": "2022-12-23T12:13:51+00:00" + "time": "2023-01-07T15:10:22+00:00" }, { "name": "doctrine/doctrine-fixtures-bundle", diff --git a/config/bundles.php b/config/bundles.php index 53e0622..8e2fd8c 100644 --- a/config/bundles.php +++ b/config/bundles.php @@ -36,4 +36,5 @@ return [ Misd\PhoneNumberBundle\MisdPhoneNumberBundle::class => ['all' => true], App\App::class => ['all' => true], KnpU\OAuth2ClientBundle\KnpUOAuth2ClientBundle::class => ['all' => true], + Lexik\Bundle\JWTAuthenticationBundle\LexikJWTAuthenticationBundle::class => ['all' => true], ]; diff --git a/config/packages/lexik_jwt_authentication.yaml b/config/packages/lexik_jwt_authentication.yaml new file mode 100644 index 0000000..edfb69d --- /dev/null +++ b/config/packages/lexik_jwt_authentication.yaml @@ -0,0 +1,4 @@ +lexik_jwt_authentication: + secret_key: '%env(resolve:JWT_SECRET_KEY)%' + public_key: '%env(resolve:JWT_PUBLIC_KEY)%' + pass_phrase: '%env(JWT_PASSPHRASE)%' diff --git a/symfony.lock b/symfony.lock index e1cdbe8..2833bbd 100644 --- a/symfony.lock +++ b/symfony.lock @@ -187,6 +187,18 @@ "league/csv": { "version": "9.6.2" }, + "lexik/jwt-authentication-bundle": { + "version": "2.16", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "2.5", + "ref": "5b2157bcd5778166a5696e42f552ad36529a07a6" + }, + "files": [ + "config/packages/lexik_jwt_authentication.yaml" + ] + }, "loophp/psr-http-message-bridge-bundle": { "version": "1.0.0" },