Skip to content

Commit 2a088c7

Browse files
committed
signer config test using rsa
1 parent 5f4bbb3 commit 2a088c7

File tree

3 files changed

+97
-0
lines changed

3 files changed

+97
-0
lines changed

tests/ClientTest.php

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,38 @@ public function testLifetime()
116116
$this->assertTrue($token->isExpired(CarbonImmutable::now()->addMinutes(5)));
117117
}
118118

119+
public function testDefaultSigner()
120+
{
121+
$token = JWT::expiresAt(Carbon::now()->addMinutes(10))->getToken();
122+
123+
$this->assertTrue(
124+
(new Validator())->validate(
125+
$token,
126+
new SignedWith(new Sha256(), InMemory::plainText("thisissigningkeythisissigningkey"))
127+
)
128+
);
129+
}
130+
131+
public function testRsaSha256Signer()
132+
{
133+
$rsa = new \Lcobucci\JWT\Signer\Rsa\Sha256();
134+
$privateKey = file_get_contents(__DIR__ . '/keys/jwtRS256.key');
135+
$publicKey = InMemory::plainText(file_get_contents(__DIR__ . '/keys/jwtRS256.key.pub'));
136+
137+
config(['jwt.signer' => \Lcobucci\JWT\Signer\Rsa\Sha256::class]);
138+
139+
$token = JWT::get('test-id', ['foo' => 'bar'], 1800, $privateKey);
140+
141+
$parsedToken = (new Parser(new JoseEncoder()))->parse($token);
142+
143+
$this->assertTrue(
144+
(new Validator())->validate(
145+
$parsedToken,
146+
new SignedWith($rsa, $publicKey)
147+
)
148+
);
149+
}
150+
119151
public function testQuickGet()
120152
{
121153
$jwt = JWT::get('test-id', ['foo' => 'bar'], 1800);

tests/keys/jwtRS256.key

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
-----BEGIN RSA PRIVATE KEY-----
2+
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
51+
-----END RSA PRIVATE KEY-----

tests/keys/jwtRS256.key.pub

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
-----BEGIN PUBLIC KEY-----
2+
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAt/kVyHFiIz1uQdiL2ECX
3+
xVGqy2brucaCmp5Tp1uVvgx17v/x2fhzBqBSJvpZ37s41klVQP1ZMLoqoB9jkuui
4+
KJxnjCJMA7YQZEwI9Z+mZETdnDF10IY/uC+9aGGmDdcDoKjkPKsXcjNypZpclHWn
5+
hmeY4+L+Ep9fdx4ust5j0lYIaEZaInM0itZrepVENjMwFCsnr7DZNZSuWljZ9gqu
6+
D1A20uLOutTxCRpRB/3I+qOwUdHRG3w6hyE4pLNhqWsjVMVCYps9e/YePmBuDnUR
7+
RWe/5Kpnai/ojVzKjDzn+z2Y9F8htR46Tpg/3PUpNcEwK2WOFN4CaJsC7leXy5TO
8+
4U/f9sBlJ/ER5Z9CMIZKInK+QvOJwExelyWfDZzGuTfRHxWl/HuNQLUKciuqzwKj
9+
DfV4wEdQjz7SaLyTjAQzy9ZArylA3pEzJmlnWVdCTi5Xt+q5mWtfbZUY+XeIuvjq
10+
A1u/dCXiPpArQgpTfwb3CKxLiXRvRV73UQ3moTNS/4XP33eqY0HXlmW9HvhUVhty
11+
AT6/zLbRx+dLyq89kvgt1kUXke4cRxDbrajlKurrQSSp8BZ+MQQrvT1cucuNAjhz
12+
OQw/Jlj4Is6OgoUAENX4az0TjWmhb41gplZGfhfF7f5YHattY55HH/jovB5mO2Jy
13+
jOJhDZN3soMdwwO4lYysZz0CAwEAAQ==
14+
-----END PUBLIC KEY-----

0 commit comments

Comments
 (0)