Commit Graph

59 Commits

Author SHA1 Message Date
ErickSkrauch f4fa5ad2df Add additional tests cases, implemented custom error formatter 2022-01-28 12:38:00 +01:00
ErickSkrauch 9593d1e809 Fix tests according to the latest permissions change [deploy dev] 2022-01-24 12:07:12 +01:00
ErickSkrauch 31febd5606 #20 Quick implementation of the https://api.minecraftservices.com/minecraft/profile endpoint [deploy dev] 2022-01-21 21:09:46 +01:00
ErickSkrauch 202099bf84 Implemented missing endpoint for the authlib injector 2021-06-13 21:21:25 +02:00
ErickSkrauch e6b6f3f169 Allow users to manually decline auth request even when an application was authenticated before 2021-03-29 04:51:37 +02:00
ErickSkrauch 7a80c44cab Alternative implementation of passing totp to the legacy Minecraft authorization protocol to not break the yggdrasil's protocol [deploy] 2021-03-08 22:21:10 +01:00
ErickSkrauch 9a3534ea2b Add totp field for Minecraft auth protocol to login into accounts, protected with 2FA [deploy] 2021-03-08 11:26:47 +01:00
ErickSkrauch 1aed8f59cb Return user field when requestUser param received on authentication/refresh endpoint [deploy] 2021-03-06 10:37:58 +01:00
ErickSkrauch 4856695940 Resolves #2. Implemented authlib-injector support 2021-03-03 15:04:42 +01:00
ErickSkrauch 9c6d9409ea Fixes #11. Strip slashes from profile UUID in the authserver's response 2021-02-18 00:41:38 +01:00
ErickSkrauch 356518c5b5 Merge branch 'authorized_clients_management' 2021-02-14 19:01:19 +01:00
ErickSkrauch c64f386365 Fix incorrect response in case when user's profile for provided UUID can't be found 2020-12-18 11:12:34 +01:00
ErickSkrauch 7da6a952ee Fix tests 2020-10-02 18:14:43 +03:00
ErickSkrauch b904d5d314 Implemented features to revoke access for previously authorized OAuth 2.0 clients 2020-09-30 20:30:04 +03:00
ErickSkrauch 17f1794a4e Covered all cases, fixed CS, added a new TODO 2020-06-13 01:55:02 +03:00
ErickSkrauch 0183e54442 Implemented account deletion. Not all cases covered with tests [skip ci] 2020-06-12 00:27:02 +03:00
ErickSkrauch 43a4a58053 Remove usage of codeception/specify and fzaninotto/faker 2019-12-21 02:26:06 +03:00
ErickSkrauch 666213afc7 Rework email_activation model, get rid of behaviors, use json column to store additional data 2019-12-21 01:23:58 +03:00
ErickSkrauch 22e8158581 Upgrade codeception to 4 version 2019-12-20 22:50:47 +03:00
ErickSkrauch 04e399c726 Fix tests 2019-12-15 00:49:54 +03:00
ErickSkrauch e8b71d33d0 Get rid of mockery library. Still have some troubles with functional tests for api 2019-12-14 00:16:05 +03:00
ErickSkrauch d9ef27b745 Cleanup code, improve typings 2019-12-13 22:27:13 +03:00
ErickSkrauch 40eca5b8b6 Remove expires_in field when the access_token isn't expiring 2019-12-13 16:00:51 +03:00
ErickSkrauch a8e20a9775 Replace custom aud and ely-scopes JWT claims with its public analogues 2019-12-13 13:56:09 +03:00
ErickSkrauch 2caf0558de Use paragonie's Base64UrlSafe encoding library 2019-12-11 14:16:11 +03:00
ErickSkrauch d27070630c Fix revokation validation. Add additional tests cases 2019-12-10 22:51:11 +03:00
ErickSkrauch 016a193263 Introduce revokation mechanism 2019-12-10 01:38:09 +03:00
ErickSkrauch ba7fad84a0 Remove refresh_token from OAuth2 result. Return the same access_token as a refresh_token in case when it's requested. Make access_tokens to live forever. 2019-12-09 19:31:54 +03:00
ErickSkrauch efb97a2006 Set access tokens TTL depending on the requested scopes 2019-12-06 19:07:08 +03:00
ErickSkrauch f0a73f2b7a Make tokens, created by client credentials grant to live forever 2019-12-06 18:31:04 +03:00
ErickSkrauch 6fb32ec76d Use libsodium to encrypt all data, related to OAuth2 2019-12-06 14:37:51 +03:00
ErickSkrauch 642db2e045 Use libsodium to encrypt data, stored in jwt tokens 2019-12-05 19:37:46 +03:00
ErickSkrauch 25f1ca912c Fix tests 2019-12-05 00:52:36 +03:00
ErickSkrauch a81ef5cac2 Replace separate minecraft access tokens with JWT 2019-12-04 21:10:15 +03:00
ErickSkrauch e52dbdbf19 Do not include offline_access scope into access_token 2019-11-07 01:12:18 +03:00
ErickSkrauch 22982b319b Fix all tests 2019-09-24 01:56:32 +03:00
ErickSkrauch a148da2ecf Add tests for the legacy tokens 2019-09-23 00:53:13 +03:00
ErickSkrauch cf62c686b1 Rework identity provider for the legacy OAuth2 tokens [skip ci] 2019-09-22 19:24:22 +03:00
ErickSkrauch 5536c34b9c Restore full functionality of OAuth2 server [skip ci] 2019-09-22 00:19:11 +03:00
ErickSkrauch 45101d6453 Completely restored authorization_code grant for user side.
Reworked oauth_sessions table.
Added extension to use MariaDB's JSON columns.
Rewritten tests for authorization_code grant for client side.
Deprecate some old shit.
[skip ci]
2019-09-18 02:15:12 +03:00
ErickSkrauch 8a1d7148d0 Implemented public scopes repository. Fix some auth cases [skip ci] 2019-09-13 01:19:03 +03:00
ErickSkrauch 4dc2a3025b Rewrite tests for OAuth2 validate and auth code complete steps [skip ci] 2019-09-06 02:33:16 +03:00
ErickSkrauch 0b63dc2d84 Upgrade oauth2-server to 8.0.0 version, rewrite repositories and entities, start rewriting tests. Intermediate commit [skip ci] 2019-08-23 11:28:04 +03:00
ErickSkrauch 967d8b11a0 Improve tests coverage 2019-08-02 18:32:08 +03:00
ErickSkrauch d9f2b1a8c9 Upgrade PHPUnit to 8. Replace codeception/base with codeception/codeception due to release bug in the base version. 2019-08-02 15:57:17 +03:00
ErickSkrauch f2ab7346aa Fixed almost everything, but all functional tests are broken at the last minute :( 2019-08-02 03:29:20 +03:00
ErickSkrauch 6bd054e743 Fix some tests 2019-08-01 19:58:18 +03:00
ErickSkrauch 45c2ed601d Replace emarref/jwt with lcobucci/jwt
Refactor all JWT-related components
Replace RS256 with ES256 as a preferred JWT algorithm
2019-08-01 12:17:12 +03:00
ErickSkrauch 4c2a9cc172 Cleanup User Component, update tests 2019-07-26 17:04:57 +03:00
valik 445c234360 Added jwt public and private key path params to user component 2019-07-26 11:11:09 +03:00