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