Commit Graph

128 Commits

Author SHA1 Message Date
Matt Allan
3413c20590 Prevent public clients from using the client_credentials grant type
See https://tools.ietf.org/html/rfc6749#section-4.4.2
2019-07-22 18:21:29 -04:00
sephster
c4c354e2df
Fix phpstan issues 2019-07-01 19:17:43 +01:00
sephster
7bc1ec643e
Remove unused import 2019-06-27 13:24:58 +01:00
sephster
51b97f87c1
Fix issues setting attributes on requests 2019-06-27 13:15:37 +01:00
sephster
e3b23fa826
Update dependencies and fix PHPUnit tests 2019-06-27 12:54:22 +01:00
sephster
17923634bf
Set private keys in tests 2019-05-14 20:56:54 +01:00
sephster
521ed9a8cb
Merge master into 8.0.0 branch 2019-05-14 15:46:01 +01:00
filecage
8cf39fd9cd applies style CI diff 2019-03-16 13:15:38 +01:00
filecage
6f6820f629 removes @var hints
the @var hints make PHP stan fail together with PHPUnit 6.3
2019-03-16 13:12:34 +01:00
filecage
aa5bbe5f06 boyscout: style CI tweaks 2019-03-11 23:26:35 +01:00
filecage
2ea76ca4fd Adds handling for null issued refresh token to Grant implementations 2019-03-08 18:19:16 +01:00
filecage
b2840474fd AbstractGrant no longer tries to issue a refresh token if the Repository returned null 2019-03-08 18:16:16 +01:00
Patrick Rodacker
fad42a88fd removes unused local variable $scopeEntity from ImplicitGrantTest 2019-01-20 22:11:22 +01:00
sephster
16f37560d4
Merge latest version of 8 branch 2018-12-19 13:03:10 +00:00
sephster
894724c45b
Remove invalid commenting 2018-12-10 23:01:45 +00:00
sephster
fd65bf9e54
Streamline tests 2018-12-10 22:51:58 +00:00
Chris Tanaskoski
ec8a663a81 Added test for respondToAccessTokenRequest using Http Basic Auth for client credentials 2018-11-29 09:28:36 +01:00
sephster
685dc6edea
Update test 2018-11-13 18:19:20 +00:00
Marc Bennewitz
16f9de86f2 cleanup DateTime handline
* DateTime -> DateTimeImmutable
* DateTime::format('U') -> DateTime::getTimestamp()
* (new DateTime())->getTimestamp() -> time()
2018-11-08 12:45:18 +01:00
sephster
36bf4ff8f2
Fix accidental paste of code 2018-09-02 16:19:47 +01:00
sephster
5d3d9d95be
Remove extra line 2018-09-02 15:46:59 +01:00
sephster
de899fbe0a
Fix incorrect usage of isConfidential 2018-09-01 15:05:12 +01:00
sephster
3eabbafe5b
Client says if it is confidential instead of repository 2018-09-01 14:53:27 +01:00
sephster
060a090479
Change tests to use validClient instead of getClientEntity 2018-09-01 14:26:22 +01:00
sephster
74495cac49
Set proper confidential settings in existing tests 2018-08-16 12:59:10 +01:00
Andrew Millington
fb43801458
Change function name to setConfidential() 2018-08-15 21:40:41 +01:00
sephster
8ab27ede39
Add test to ensure public clients are asked to provide a code challenge 2018-08-13 22:54:12 +01:00
sephster
0105a20126
Reverted tests to remove isConfidential check 2018-08-13 22:00:34 +01:00
sephster
491852b521
Move code challenge check to auth code request 2018-08-13 21:47:53 +01:00
sephster
7f2fd7b22c
Add set confidential to clients for tests 2018-08-13 21:21:59 +01:00
Andrew Millington
abef682031
Add setIsConfidential to client stub for tests 2018-08-12 20:34:58 +01:00
Andrew Millington
5ad00b0e33
Remove enableCodeExchangeProof function 2018-07-29 22:34:37 +01:00
Andrew Millington
f49cc65c13
Change to store code challenge and method whenever sent for PKCE 2018-07-29 19:56:30 +01:00
Christiaan Goossens
a479b5762e Fix implicit grant scopes 2018-07-13 11:47:32 +02:00
Andrew Millington
574299d862
Fix tests 2018-06-24 13:38:55 +01:00
Andrew Millington
dad3b1e1c9
Remove unused test 2018-06-24 13:32:49 +01:00
Andrew Millington
61156ef8c7
Use __toString() for access token 2018-05-23 16:34:39 +01:00
Andrew Millington
33ce849617 Add tests for invalid client exception 2018-05-13 17:29:07 +01:00
Andrew Millington
c8b44ff5c7
Revert fix for client ID exception 2018-04-20 18:22:07 +01:00
Simon Hamp
6723aadfe8 Fix #837
Unifies how we fetch the client_id from the request and allows us to throw a more appropriate exception when the client_id parameter is missing.

Improves the test method for this validation by checking the culpable method in this particular case. The test was missing this by calling the wrong method.
2018-02-26 15:56:28 +00:00
Andrew Millington
b78c012796
Change code challenge and verifier to be constants in test 2018-02-18 13:51:34 +00:00
Erick Torres
ce2662ece7 Merge branch 'master' of github.com:thephpleague/oauth2-server into fix-pkce-implementation
# Conflicts:
#	tests/Grant/AuthCodeGrantTest.php
2018-02-05 15:32:15 -05:00
Sergio Gómez
1b692e2298 Fix S256 code challenge method
According to [RFC7636#section-4.3](https://tools.ietf.org/html/rfc7636#section-4.3):

    If the "code_challenge_method" from Section 4.3 was "S256", the
    received "code_verifier" is hashed by SHA-256, base64url-encoded, and
    then compared to the "code_challenge", i.e.:

    BASE64URL-ENCODE(SHA256(ASCII(code_verifier))) == code_challenge

So, the hash must be done before the base64_encode.

The tests are modified to use example data from the
[RFC7636#appendix-B](https://tools.ietf.org/html/rfc7636#appendix-B).
2018-01-18 05:31:44 +01:00
Erick Torres
01d21b2533 Update statement to generate codeChallenge in AuthCodeGrantTest 2017-12-29 12:32:12 -05:00
Andrew Millington
b6d9835281
Merge branch 'master' into fix-pkce-implementation 2017-12-28 16:37:37 +00:00
Andrew Millington
57ca83a8ba
Removing missing scope tests as temporarily reverted this functionality 2017-12-24 00:18:20 +00:00
Andrew Millington
41bba7f58c
Removing missing scope test
Temporarily removing missing scope test as have reverted this functionality for version 6.1.1
2017-12-24 00:07:22 +00:00
Andrew Millington
dcae4af6ce
Remove missing scope test
Temporarily removing missing scope test for the AuthGrant
2017-12-24 00:06:18 +00:00
Andrew Millington
1c36b70dab
Fixed ordering so we only hash after base64 encoding 2017-12-23 02:06:18 +00:00
Andrew Millington
f11e4c81cd
Merge pull request #697 from fkooman/fix-s256
Fix PKCE code verifier encoding to match specification
2017-12-23 01:52:33 +00:00