paragonie/ php-jwt-guard
v0.3.0
2021-08-11 21:27 UTC
Requires
- php: >=5.3.0
- firebase/php-jwt: ^5
- paragonie/sodium_compat: ^v1.17
Requires (Dev)
- phpunit/phpunit: >=4.8 <=9
This package is auto-updated.
Last update: 2024-09-14 06:24:34 UTC
README
保护您的代码免受firebase/php-jwt中的问题351的影响。
安装
首先,使用Composer安装此库
composer require paragonie/php-jwt-guard
然后,在您的PHP命名空间导入中,交换命名空间
- use Firebase\JWT\JWT; + use ParagonIE\PhpJwtGuard\JWT;
您将不再向JWT提供数组或ArrayAccess对象。相反,您需要使用提供的KeyRing类。
<?php use ParagonIE\PhpJwtGuard\KeyRing; use ParagonIE\PhpJwtGuard\JWT; // Setup keyring: $keyring = (new KeyRing()) ->withHS256('key-id-foo', 'raw-key-data-goes-here') ->withHS384('key-id-bar', 'raw-key-data-goes-here-too') // ... ->withPS384('key-id-xyzzy', 'raw-key-data-goes-here-too') ->withPS512('key-id-thud', 'raw-key-data-goes-here-too'); // Pass it to JWT Dcode: JWT::decode($jwt, $keyring, array($allowedAlgs));
使用KeyRing类
KeyRing->with($alg, $keyId, $rawKeyData)
参数
string
$alg - 此密钥预期的算法string
$keyId - 映射到此密钥的kid
头部string
$rawKeyData - 实际密钥材料。对于非对称密钥,这通常是PEM编码的。
返回KeyRing对象。可链式调用。
KeyRing->count()
返回一个整数。
KeyRing->partition($alg)
参数
string
$alg - 此密钥预期的算法
返回一个新的KeyRing对象,其中包含所有支持密钥的子集。