spomky-labs / lexik-jose-bridge
允许使用 web-token/jwt-framework 与 Lexik JWT 认证包的桥梁
Requires
- php: >=8.1
- lexik/jwt-authentication-bundle: ^2.0
- psr/event-dispatcher: ^1.0
- thecodingmachine/safe: ^2.0
- web-token/jwt-bundle: ^3.0
- web-token/jwt-checker: ^3.0
- web-token/jwt-encryption: ^3.0
- web-token/jwt-key-mgmt: ^3.0
- web-token/jwt-signature: ^3.0
- web-token/jwt-signature-algorithm-rsa: ^3.0
Requires (Dev)
- behat/behat: ^3.0
- caciobanu/behat-deprecation-extension: ^2.1
- ekino/phpstan-banned-code: ^1.0
- friends-of-behat/mink-browserkit-driver: ^1.6
- friends-of-behat/mink-extension: ^2.3
- friends-of-behat/symfony-extension: ^2.3
- phpstan/phpstan: ^1.0
- phpstan/phpstan-beberlei-assert: ^1.0
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpstan/phpstan-strict-rules: ^1.0
- rector/rector: ^0.12
- sensio/framework-extra-bundle: ^6.0
- symfony/dependency-injection: ^6.0
- symfony/expression-language: ^6.0
- symfony/finder: ^6.0
- symfony/form: ^6.0
- symfony/monolog-bundle: ^3.7
- symfony/templating: ^6.0
- symfony/twig-bundle: ^6.0
- symfony/var-dumper: ^6.0
- symplify/easy-coding-standard: ^10.0
- thecodingmachine/phpstan-safe-rule: ^1.0
- web-token/jwt-encryption-algorithm-aesgcm: ^3.0
- web-token/jwt-encryption-algorithm-aesgcmkw: ^3.0
- web-token/jwt-signature-algorithm-hmac: ^3.0
- v4.0.x-dev
- v4.0.0
- v3.0.x-dev
- v3.0.3
- v3.0.2
- v3.0.1
- v3.0.0
- v2.2.x-dev
- v2.2.1
- v2.2.0
- v2.1.x-dev
- v2.1.1
- v2.1.0
- v2.0.x-dev
- 2.0.5
- v2.0.4
- v2.0.3
- v2.0.2
- v2.0.1
- v2.0.0
- v2.0.0-alpha.1
- v1.1.0
- v1.0.x-dev
- v1.0.2
- v1.0.1
- v1.0.0
- dev-dependabot/composer/symplify/easy-coding-standard-tw-12.0
- dev-dependabot/composer/rector/rector-tw-0.17
This package is auto-updated.
Last update: 2024-08-26 06:47:00 UTC
README
这个 Symfony 扩展包为 LexikJWTAuthenticationBundle 提供了一个 JWT 编码器,该编码器使用 web-token/jwt-framework 作为 JWT 创建器/加载器。
发布流程
发布流程 在此处描述。
先决条件
此库需要至少
- PHP 8.1+
- Symfony 6.0+。
安装
Symfony Flex
安装此扩展包的最佳方式是依赖 Symfony Flex 和 composer。在安装扩展包之前,必须将特定的 Flex 服务器声明到您的 composer.json 文件中。
composer config --json extra.symfony.endpoint '["https://api.github.com/repos/Spomky-Labs/recipes/contents/index.json?ref=main", "flex://defaults"]'
或者,如果您愿意,可以直接更新您的 composer.json
文件。
{ "name": "acme/application", "description": "ACME Application", "extra": { "symfony": { "endpoint": [ "https://api.github.com/repos/Spomky-Labs/recipes/contents/index.json?ref=main", "flex://defaults" ] } } }
然后,您可以安装扩展包。它将自动使用默认配置进行配置。
composer require spomky-labs/lexik-jose-bridge
手动安装
如果您不使用 Symfony Flex,则使用 Composer 手动安装扩展包。然后,将此扩展包和 web-token/jwt-framework
扩展包添加到您的内核中。
<?php use Symfony\Component\Config\Loader\LoaderInterface; use Symfony\Component\HttpKernel\Kernel; class AppKernel extends Kernel { public function registerBundles() { $bundles = [ ... new Jose\Bundle\JoseFramework\JoseFrameworkBundle(), new SpomkyLabs\LexikJoseBundle\SpomkyLabsLexikJoseBundle(), ]; return $bundles; } }
签名/加密算法
此扩展包仅安装基于 RSA 的签名算法(RS256
、RS384
和 RS512
)。如果您需要其他签名算法(例如基于 EC 的,HMAC)或想要使用加密功能,则必须安装相应的包。
- 签名算法
- 所有:
composer require web-token/signature-pack
(不推荐) - HMAC:
composer require web-token/jwt-signature-algorithm-hmac
- ECDSA:
composer require web-token/jwt-signature-algorithm-ecdsa
- EdDSA:
composer require web-token/jwt-signature-algorithm-eddsa
- 无:
composer require web-token/jwt-signature-algorithm-none
(不推荐) - 实验性:
composer require web-token/jwt-signature-algorithm-experimental
(不推荐)
- 所有:
- 加密算法
- 所有:
composer require web-token/encryption-pack
(不推荐) - 密钥加密
- ECDH-ES:
composer require web-token/jwt-encryption-algorithm-ecdh-es
- AES 密钥包装:
composer require web-token/jwt-encryption-algorithm-aeskw
- RSA:
composer require web-token/jwt-encryption-algorithm-rsa
- AES GCM 密钥包装:
composer require web-token/jwt-encryption-algorithm-aesgcmkw
- 直接:
composer require web-token/jwt-encryption-algorithm-dir
(不推荐) - PBES 2:
composer require web-token/jwt-encryption-algorithm-pbes2
(不推荐)
- ECDH-ES:
- 内容加密
- AES GCM:
composer require web-token/jwt-encryption-algorithm-aesgcm
- AES CBC:
composer require web-token/jwt-encryption-algorithm-aescbc
- AES GCM:
- 实验性:
composer require web-token/jwt-encryption-algorithm-experimental
(不推荐)
- 所有:
配置
此扩展包需要配置。请参阅此页面了解如何配置它。
如何使用
无需做任何事情。只需像平常一样使用您的应用程序即可。
支持
我为您的问题提供解决方案并回答您的问题。
如果你真的喜欢这个项目以及我所做的工作,或者如果你想让我优先处理你的问题,那么你可以请我喝几杯🍻或者更多来帮忙!
或者
贡献
如果你在项目中发现安全漏洞,请不要使用漏洞追踪器,也不要公开发布。相反,所有安全问题必须发送到security [at] spomky-labs.com。
许可证
本项目采用MIT许可证发布。