Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update from upstream repo jumbojett/OpenID-Connect-PHP@master #2

Open
wants to merge 327 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
327 commits
Select commit Hold shift + click to select a range
5ca3acf
Add implementation for Token Introspection https://tools.ietf.org/htm…
DeepDiver1975 Apr 8, 2019
cda29c6
Merge pull request #156 from DeepDiver1975/feature/rfc7662
jumbojett Apr 8, 2019
368dedb
Add optional parameters clientId/clientSecret for introspection
DeepDiver1975 Apr 15, 2019
ee245d0
Fix $this->$enc-type to $this->enc-type
DeepDiver1975 Apr 15, 2019
5767318
Fix $this->$enc-type to $this->enc-type
DeepDiver1975 Apr 15, 2019
726c42a
Merge pull request #157 from DeepDiver1975/feature/introspection-clie…
jumbojett Apr 15, 2019
190482b
Update CHANGELOG.md
jumbojett Apr 15, 2019
9c3a20a
Merge pull request #158 from DeepDiver1975/bugfix/enc_type
jumbojett Apr 15, 2019
6f23fbb
Update CHANGELOG.md
jumbojett Apr 15, 2019
2277717
Add OAuth 2.0 Token Revocation - rfc7009
DeepDiver1975 Apr 26, 2019
54368a5
Merge pull request #160 from DeepDiver1975/feature/rfc7009
jumbojett Apr 30, 2019
62d557c
added issuer validator
Jun 4, 2019
bd272a4
Merge pull request #166 from findus/custom-issuer-validator
jumbojett Jun 5, 2019
b5a0666
Added strict type comparisons
Jun 26, 2019
46d19ad
Merge pull request #167 from Hackmanit/master
jumbojett Jun 26, 2019
8af5437
Update CHANGELOG.md
jumbojett Jun 26, 2019
e03638e
getRedirectURL avoid PHP 7.1+ warning on reset()
mcouillard Sep 3, 2019
27039ea
Adding signing algorithm PS256
DeepDiver1975 Sep 13, 2019
bac312c
Merge pull request #180 from DeepDiver1975/feature/add-PS256
jumbojett Sep 13, 2019
6dd8d00
move phpunit to require-dev
phil-davis Sep 16, 2019
4a93a98
Merge pull request #181 from phil-davis/phpunit-is-dev-dependency
jumbojett Sep 16, 2019
06cf1b2
added getters for parameters that already have public setters
Oct 16, 2019
db00da4
made some members and methods protected instead of private
Oct 16, 2019
dc355ad
added getter for issuer validator
Oct 21, 2019
063ef22
added getter for leeway
Oct 21, 2019
4beca0c
Update OpenIDConnectClient.php
brunopenso Dec 9, 2019
b1de8e2
Merge pull request #186 from brunopenso/master
jumbojett Dec 9, 2019
3d868b7
Update CHANGELOG.md
jumbojett Dec 9, 2019
1549834
php 7.4 deprecates array_key_exists on objects, use property_exists i…
stijnster Dec 24, 2019
cb07ebf
add changelog entry
stijnster Dec 24, 2019
5806cf3
URL encode basic auth user and password
bobvandevijver Jan 6, 2020
3950e13
Updated changelog about url encoded client id/secret
bobvandevijver Jan 6, 2020
a50eb93
Fixed other basic auth authentication client id/secret encoding
bobvandevijver Jan 6, 2020
62573f5
Merge pull request #192 from bobvandevijver/patch-1
jumbojett Jan 7, 2020
970d8a3
Happy new year 🎉
jumbojett Jan 7, 2020
540c88c
Cleaning up documentation
jumbojett Jan 7, 2020
d7cb656
Adjust PHPDoc to state that null is also allowed
DeepDiver1975 Jan 8, 2020
84e88a1
Merge pull request #193 from DeepDiver1975/bugfix/phpdoc
jumbojett Jan 9, 2020
c85ea86
Update CHANGELOG.md
jumbojett Jan 9, 2020
d8d3453
Merge branch 'master' of https://github.com/jumbojett/OpenID-Connect-PHP
stijnster Jan 28, 2020
b8462ed
Merge pull request #191 from stijnster/master
jumbojett Jan 28, 2020
94b3e42
Fix at_hash verification
babelouest Mar 6, 2020
cdf454f
Bugfix: openid scope was omitted when additional scopes were registered
JuliusPC Mar 6, 2020
0817149
added description for Bugfix
JuliusPC Mar 6, 2020
425577c
Merge pull request #201 from JuliusPC/master
jumbojett Mar 6, 2020
a57ab1e
Delete LICENSE.txt
JuliusPC Mar 9, 2020
9bc028d
Create LICENSE file from github template
JuliusPC Mar 9, 2020
c02f771
Merge pull request #203 from JuliusPC/master
jumbojett Mar 9, 2020
87eefea
Prep for release
jumbojett Mar 9, 2020
a472818
Merge pull request #200 from babelouest/master
jumbojett Mar 11, 2020
1affa0a
Update CHANGELOG.md
jumbojett Mar 11, 2020
f0d5cd8
Merge pull request #204 from floriankick/getters-for-public-parameters
jumbojett Mar 25, 2020
103cd52
Update CHANGELOG.md
jumbojett Mar 25, 2020
dd44c1c
Removed client ID query parameter when making a token request using B…
jonerickson Apr 6, 2020
cf184a4
Update CHANGELOG.md
mcouillard May 1, 2020
2e090cf
Content-Length header may be sent in proxy CONNECT
seth-xdam May 11, 2020
8136235
Changelog regarding content-length header
seth-xdam May 11, 2020
a770de3
Merge pull request #1 from XDAM/bugfix/remove-content-length-header
seth-xdam May 11, 2020
f413ac4
Merge pull request #213 from XDAM/master
jumbojett May 13, 2020
db1e159
enable client_basic_auth for refresh token
capile May 18, 2020
8b27bef
adding missing headers for basic auth
capile May 18, 2020
c1d3d05
updated changelog
capile May 18, 2020
4d8a7dd
Merge pull request #208 from DeschutesDesignGroupLLC/remove-clientid-…
jumbojett Jun 19, 2020
840572c
Update CHANGELOG.md
KieranFJ Jul 7, 2020
45808a4
Add scope to refreshToken request
KieranFJ Jul 7, 2020
43d4c96
Update OpenIDConnectClient.php
KieranFJ Jul 7, 2020
8b1d15b
Added cURL error code to existing error message
NamoDev Jul 8, 2020
2e765de
Merge pull request #226 from NamoDev/add-curl-errno-to-exception
jumbojett Jul 8, 2020
8509ec2
Add support for MS Azure Active Directory B2C user flows
digital2real Jul 23, 2020
7f5940c
use random_bytes instead of uniqid for token generation; added random…
JuliusPC Jul 27, 2020
dc96361
Use of `random_bytes()`
JuliusPC Jul 27, 2020
07b4fc0
Merge pull request #227 from digital2real/add-azure-adfs-b2c-userflow…
jumbojett Jul 27, 2020
9f15504
Prepping for release
jumbojett Aug 27, 2020
ce97230
Add support for PKCE
nikosev Oct 29, 2020
bca40d1
Fix "Undefined index:openid_connect_code_verifier"
nikosev Nov 2, 2020
5b17a57
Require paragonie/random_compat library
nikosev Nov 2, 2020
721a96e
Fix typo in CHANGELOG
nikosev Nov 2, 2020
96613ef
Merge pull request #223 from JuliusPC/JuliusPC-true-random
jumbojett Nov 9, 2020
5d57bbf
Merge pull request #235 from nikosev/feature/pkce
jumbojett Nov 9, 2020
4f95102
Update CHANGELOG.md
jumbojett Nov 16, 2020
b4eacdb
use correct naming for ID token parameter in signOut method
JuliusPC Dec 4, 2020
9d2e5aa
has_equals → hash_equals in comment
JuliusPC Dec 4, 2020
f4ef506
unify formatting, use short array syntax
JuliusPC Dec 4, 2020
296b8db
change non public method and variable to camel case
JuliusPC Dec 4, 2020
751a018
add comment for encType variable
JuliusPC Dec 4, 2020
024cbf0
remove duplicate paragonie/random_compat dependency
JuliusPC Dec 5, 2020
698bc59
add get/setHttpUpgradeInsecureRequests(), fixes #174
JuliusPC Dec 5, 2020
851f04b
Merge pull request #2 from jumbojett/master
mcouillard Dec 5, 2020
1f5e505
Merge branch 'master' into mcouillard-reset-warning
mcouillard Dec 5, 2020
10a8fe5
removed a leftover from conflict resolution; whitespace fix
mcouillard Dec 5, 2020
c4d45cb
Check if session key exists before accessing it
erikdsjostrom Mar 9, 2021
ac71a4c
Fix php5.4 empty-bug
idittmar Apr 14, 2021
79915d0
Prevent notice "Only variables can be passed by reference" [Fixes #261]
May 12, 2021
92533ec
Auth basic for requestResourceOwnerToken added
Jul 5, 2021
29e2abc
Update composer.json
aureolebigben Jul 5, 2021
fc5ad50
Update composer.json
aureolebigben Jul 5, 2021
9d9ba02
Implement RFC8693 Token Exchange Request
IljaN Sep 14, 2021
56620ba
Token Exchange: Add support for client_secret_post
IljaN Sep 15, 2021
eaeb520
verifyJWTclaims: fixed an exception when $accessToken is null
azmeuk Oct 1, 2021
e44e56c
Merge pull request #239 from JuliusPC/JuliusPC/fix-composer-dependency
DeepDiver1975 Nov 18, 2021
131e7f9
Merge pull request #276 from azmeuk/expected-at-hash-fix
azmeuk Nov 20, 2021
4889be7
Merge pull request #241 from JuliusPC/JuliusPC/configure-https-upgrade
azmeuk Nov 20, 2021
d58b6a5
Merge pull request #267 from idittmar/master
azmeuk Nov 20, 2021
24b7bd6
Removed some comments
azmeuk Nov 20, 2021
fad72f5
Merge branch 'master' into mcouillard-reset-warning
azmeuk Nov 20, 2021
6596fb7
Merge pull request #179 from mcouillard/mcouillard-reset-warning
azmeuk Nov 20, 2021
2fcbc64
Changelog
azmeuk Nov 20, 2021
5d9c3a8
Merge branch 'master' into issue-261-prevent-notice
azmeuk Nov 20, 2021
268447f
Merge pull request #262 from zdenekzahor/issue-261-prevent-notice
azmeuk Nov 20, 2021
6b33751
Merge pull request #251 from erikdsjostrom/master
azmeuk Nov 20, 2021
56aa80e
Changelog
azmeuk Nov 20, 2021
2bb8ce1
Merge branch 'master' into master
azmeuk Nov 20, 2021
0711823
Merge pull request #225 from KieranFJ/master
azmeuk Nov 20, 2021
4ef5208
Changelog
azmeuk Nov 20, 2021
47506dd
unit tests with GHA
azmeuk Nov 20, 2021
b74d829
Merge pull request #278 from azmeuk/unit-tests
azmeuk Nov 20, 2021
556803a
Version 0.9.3
azmeuk Nov 20, 2021
3a0c3a5
Changelog
azmeuk Nov 20, 2021
8475955
Merge pull request #271 from aureolebigben/pullrequest
azmeuk Nov 21, 2021
712bab2
Changelog
azmeuk Nov 21, 2021
dd30a3a
Merge branch 'master' into master
azmeuk Nov 21, 2021
317c4ac
Merge pull request #279 from azmeuk/capile
azmeuk Nov 21, 2021
0ccd324
GHA: stop testing PHP 5.4
azmeuk Nov 21, 2021
11785b4
Version 0.9.4
azmeuk Nov 21, 2021
f1dc330
Merge branch 'master' into master
azmeuk Nov 24, 2021
64add0a
Merge pull request #127 from TheCrealm/master
azmeuk Nov 24, 2021
83481eb
Changelog
azmeuk Nov 24, 2021
7b94db5
Add failing test for null nonce on claims causing an exception
Nov 24, 2021
31913bf
Fix for claims containing a null nonce.
Nov 24, 2021
9b04bf4
Add changelog entry for missing nonce issue
Nov 24, 2021
14991f7
Merge pull request #280 from jenkoian/check-nonce-isset
azmeuk Nov 24, 2021
15cd81f
Replace error control operator "@" with isset()
freddieleeman Jan 11, 2022
5b7fe8f
Support for phpseclib v3 [Resolves #253]
May 12, 2021
44ff466
Support for phpseclib v3 [Resolves #253]
May 12, 2021
83d20d6
Merge pull request #260 from zdenekzahor/issue-253-phpseclib-v3
azmeuk Jan 13, 2022
c5bb1de
Fix to pass unit test
freddieleeman Jan 14, 2022
0097efe
Return false if host cannot be determined.
freddieleeman Jan 14, 2022
9429ba0
test expects 'http:///'
freddieleeman Jan 14, 2022
05c3036
Merge pull request #283 from freddieleeman/patch-1
azmeuk Jan 14, 2022
c0e124a
Update README.md
winstonpersonify Mar 8, 2022
0821bdc
Fix php 8.1
jlallana Mar 8, 2022
14322ab
Run GH workflow on PHP 8.0 and 8.1
DeepDiver1975 Mar 8, 2022
414c093
tests: run test cases on all supported PHP versions
DeepDiver1975 Mar 8, 2022
2642cf6
Merge pull request #290 from winstonpersonify/patch-1
DeepDiver1975 Mar 8, 2022
dd8f90d
Merge pull request #292 from jumbojett/DeepDiver1975-patch-1
DeepDiver1975 Mar 8, 2022
5c6fdb6
Merge pull request #291 from jlallana/master
DeepDiver1975 Mar 8, 2022
d163bf5
fix: Don't unset headers when using code challenge
IljaN Aug 4, 2021
2bd72ab
Merge pull request #293 from jumbojett/IljaN-patch-1
DeepDiver1975 Mar 8, 2022
16ebfc2
fix: allow serializing OpenIDConnectClient
dunglas Mar 28, 2022
5785278
Merge pull request #295 from dunglas/feat/serialize
DeepDiver1975 Mar 29, 2022
1a2844c
feat: allow passing custom headers to requestTokens()
dunglas Mar 29, 2022
4ac6b24
Merge pull request #297 from dunglas/feat/headers
DeepDiver1975 Mar 30, 2022
8b85f7c
Fix typos
samnela Apr 9, 2022
10b2372
Merge pull request #299 from samnela/patch-1
DeepDiver1975 May 2, 2022
5b0b423
Version 0.9.6
azmeuk May 8, 2022
82eeeaa
Fix PHP 5.4 bug
davidbernard04 Jun 6, 2022
15b3554
Merge pull request #1 from davidbernard04/php54-bug-method-return-val…
davidbernard04 Jun 6, 2022
a5510d2
Added userInfo response type check to handle signed and encrypted res…
ricklambrechts Jun 13, 2022
bc2a8c9
Use session_status() to check if session should be started (#306)
simonhammes Jun 28, 2022
d217102
Merge pull request #307 from simonhammes/fix-check-inside-startSession
DeepDiver1975 Jul 5, 2022
c386fa0
Merge pull request #304 from davidbernard04/master
DeepDiver1975 Jul 5, 2022
22074e6
Merge branch 'JuliusPC/cleanup' of github.com:JuliusPC/OpenID-Connect…
DeepDiver1975 Jul 5, 2022
5bfc48f
Merge pull request #309 from jumbojett/JuliusPC-JuliusPC/cleanup
DeepDiver1975 Jul 5, 2022
6dbd282
Merge pull request #275 from IljaN/token-exchange-rfc8693
DeepDiver1975 Jul 8, 2022
ca7429b
feat: verify JWT using JWK header
DeepDiver1975 Jul 5, 2022
e77e20f
Merge pull request #308 from jumbojett/feat/support-header-jwk
DeepDiver1975 Jul 13, 2022
2ca0581
release 0.9.7
DeepDiver1975 Jul 13, 2022
7687f03
Merge pull request #311 from jumbojett/release/0.9.7
DeepDiver1975 Jul 13, 2022
d6aa989
feat: add client_secret_jwt support
andreipopa-who Jul 21, 2022
5305713
fix: use empty array as fallback if the IdP is not exposing/supportin…
DeepDiver1975 Aug 5, 2022
f2f74b9
Merge pull request #317 from jumbojett/fix/fallback-code_challenge_me…
DeepDiver1975 Aug 5, 2022
1f80014
Release 0.9.8
DeepDiver1975 Aug 5, 2022
96b1295
Merge pull request #318 from jumbojett/release/0.9.8
DeepDiver1975 Aug 5, 2022
1956de3
Use consistent spacing
timvisee Aug 26, 2022
ffb8d38
linting: Update src/OpenIDConnectClient.php
andreipopa-who Sep 15, 2022
626a8ae
Merge branch 'jumbojett:master' into handle-application-jwt
ricklambrechts Sep 15, 2022
e8db274
use correct types
ricklambrechts Sep 15, 2022
1b4b69f
set response as jwt when not jwe
ricklambrechts Sep 15, 2022
5ed9bd9
Added id token jwe decryption
ricklambrechts Sep 15, 2022
5832c8e
Added support for private_key_jwt authentication method
ricklambrechts Sep 15, 2022
e535cbc
use __invoke for supporting older php versions
ricklambrechts Sep 15, 2022
bddb3bf
Updated changelog
ricklambrechts Sep 16, 2022
f3196f3
Updated changelog
ricklambrechts Sep 16, 2022
ed0e30a
fix: harden self signed JWK header
DeepDiver1975 Sep 26, 2022
3c896de
Merge pull request #319 from timvisee/master
DeepDiver1975 Sep 26, 2022
7672086
Merge pull request #323 from jumbojett/fix/harden-self-signed-jwk-header
DeepDiver1975 Sep 27, 2022
eeb23dd
Merge latest and fix conflicts
mig5 Sep 28, 2022
c7c6aca
Add changelog entry and documentation in the README for back-channel …
mig5 Sep 28, 2022
fba1440
Merge pull request #322 from ricklambrechts/add-support-for-private-k…
DeepDiver1975 Sep 28, 2022
12b9a53
Merge branch 'master' of github.com:andreipopa-who/OpenID-Connect-PHP…
DeepDiver1975 Sep 28, 2022
6b9a39f
Merge pull request #324 from jumbojett/andreipopa-who-master
DeepDiver1975 Sep 28, 2022
1161b77
fix: $this->enc_type -> $this->encType
DeepDiver1975 Sep 28, 2022
7883f6c
Merge pull request #302 from mig5/back-channel-logout
DeepDiver1975 Sep 28, 2022
db9a25c
chore: code cleanup of back-channel PR #302
DeepDiver1975 Sep 28, 2022
31354e8
Merge pull request #325 from jumbojett/fix/enc-type
DeepDiver1975 Sep 28, 2022
4046c22
Merge pull request #326 from jumbojett/fix/cleanup-back-channel
DeepDiver1975 Sep 28, 2022
f69b40f
Release 0.9.9
DeepDiver1975 Sep 28, 2022
a135c5d
Merge pull request #328 from jumbojett/release/0.9.9
DeepDiver1975 Sep 28, 2022
89bdf7c
fix: client_secret_jwt and private_key_jwt support is disabled by def…
DeepDiver1975 Sep 29, 2022
0e2fbc3
Merge pull request #331 from jumbojett/fix/client_secret_jwt-configur…
DeepDiver1975 Sep 30, 2022
45aac47
Release v0.9.10
DeepDiver1975 Sep 30, 2022
6aae75b
Merge pull request #332 from jumbojett/release/0.9.10
DeepDiver1975 Sep 30, 2022
4338e85
Fix LogoutToken verification for single value `aud` claims
Sep 30, 2022
7cb7590
Add Changelog entry
Sep 30, 2022
05964b3
Remove unnecessary method overrides in UnitTest
Sep 30, 2022
eb26fe2
Merge branch 'master' into handle-application-jwt
ricklambrechts Oct 6, 2022
e3c3f9a
Removed interface and added function that can be extended to add the …
ricklambrechts Oct 6, 2022
4d67728
docs: fix getSubjectFromBackChannel in README
melanger Nov 22, 2022
2d78c15
Merge pull request #346 from melanger/patch-1
azmeuk Nov 25, 2022
7a7dbec
Fix return type
akhil1508 Dec 12, 2022
102a5bb
Merge pull request #305 from ricklambrechts/handle-application-jwt
DeepDiver1975 Dec 14, 2022
a4776d1
Add an extra check on $_REQUEST['state']
kastoras Jan 3, 2023
ed5ccd9
Fix if statement to throw error instead of bypass
kastoras Jan 10, 2023
8a80c1a
Correct variable docstring
akhil1508 Jan 12, 2023
5c90e0f
Merge pull request #350 from akhil1508/correct-return-type
azmeuk Jan 12, 2023
13e86af
docs: fix changelog format
melanger Jan 13, 2023
b6cc813
Update CHANGELOG.md
kastoras Jan 19, 2023
a38cf08
Merge pull request #358 from melanger/patch-3
azmeuk Mar 10, 2023
abe958f
Merge branch 'master' into fix-php-8-warning-on-authenticate
kastoras Mar 16, 2023
9483fff
Merge pull request #354 from kastoras/fix-php-8-warning-on-authenticate
azmeuk Mar 16, 2023
e94b9eb
chore: Update construct typehint in docblock (#364)
ricklambrechts Mar 29, 2023
20b51cb
chore: Update visibility of getWellKnownConfigValue to protected (#363)
ricklambrechts Mar 29, 2023
dd9ceb0
Merge branch 'master' into Fix_LogoutToken_Validation_AUD_Claim
Mar 29, 2023
e46f108
Merge pull request #334 from hallowelt/Fix_LogoutToken_Validation_AUD…
azmeuk Mar 29, 2023
e6eab93
feat: php7.0 minimum requirement (#327)
DeepDiver1975 May 3, 2023
8ec206b
feat: set useragent (#370)
ricklambrechts May 4, 2023
c146b71
fix: Update well known config value function response types (#376)
ricklambrechts Jul 26, 2023
5d69bcf
Set the User-Agent regardless of GET or POST (#382)
mig5 Aug 1, 2023
7be38be
release: 1.0.0 (#402)
DeepDiver1975 Dec 13, 2023
4e32595
chore: Update ci to support php 8.3 and add dependabot (#407)
ricklambrechts Apr 22, 2024
73af840
docs: Update README.md to correct addScope parameter type in 1.0.0 (#…
jasongill Apr 22, 2024
6ac3ed4
chore(deps): bump actions/checkout from 2 to 4 (#416)
dependabot[bot] Apr 22, 2024
f5fadf1
chore(deps): bump actions/cache from 3 to 4 (#417)
dependabot[bot] Apr 22, 2024
e31ec33
fix: Cast SERVER_PORT to integer (#404)
timsmid Apr 22, 2024
0c8f54d
fix: Check if subject is equal to subject of id token when verifying …
ricklambrechts Apr 22, 2024
1a468a4
fix: Removed duplicate check on jwks_uri and only check if jwks_uri e…
ricklambrechts Apr 23, 2024
1e85443
fix: method signatures after 1.0 release (#427)
DeepDiver1975 Sep 5, 2024
0509be8
fix: handle JWT decode of non JWT tokens (#428)
DeepDiver1975 Sep 5, 2024
0fbf8f2
chore: enable dependabot for composer (#429)
DeepDiver1975 Sep 5, 2024
036530b
ci: run GitHub workflows on pull requests and pushes to master (#431)
DeepDiver1975 Sep 5, 2024
e316397
chore(deps): update phpseclib/phpseclib requirement from ~3.0 to ^3.0.7
artemboyko43 Sep 5, 2024
2256030
chore(deps-dev): update yoast/phpunit-polyfills requirement from ^1.0…
dependabot[bot] Sep 5, 2024
765ddbd
fix: protected $responseCode to allow proper overloading of fetchURL(…
DeepDiver1975 Sep 6, 2024
7569311
release: v1.0.1 (#432)
DeepDiver1975 Sep 6, 2024
db1ed8b
fix: bring back #404 (#437)
DeepDiver1975 Sep 13, 2024
a5994e7
test: add unit test for SERVER_PORT type cast (#438)
DeepDiver1975 Sep 13, 2024
9af21bd
release: v1.0.2 (#439)
DeepDiver1975 Sep 13, 2024
60919af
Fix TypeError in `verifyJWTClaims` (#442)
osnard Sep 17, 2024
97adbce
test: unit tests for verifyJWTClaims and different aud claims (#443)
DeepDiver1975 Sep 18, 2024
f7c91b9
fix: protected responseContentType to allow overloading of fetchUrl f…
ricklambrechts Sep 27, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2

updates:
# Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"

# Maintain dependencies for composer
- package-ecosystem: "composer"
directory: "/"
schedule:
interval: "weekly"
44 changes: 44 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
name: build

on:
push:
branches:
- master
pull_request:
branches:
- master

env:
DEFAULT_COMPOSER_FLAGS: "--prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi"

jobs:
phpunit:
name: PHP ${{ matrix.php }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
php: ['7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3']

steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
- name: Get composer cache directory
id: composer-cache
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
- name: Cache composer dependencies
uses: actions/cache@v4
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ runner.os }}-composer-
- name: Install dependencies
run: composer update $DEFAULT_COMPOSER_FLAGS
- name: Run unit tests
run: vendor/bin/phpunit --colors=always tests
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/.idea
/vendor
/composer.lock
.phpunit.result.cache
192 changes: 185 additions & 7 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,194 @@
# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/)
and this project adheres to [Semantic Versioning](http://semver.org/).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.0.1] - 2024-09-13

### Fixed
- Cast `$_SERVER['SERVER_PORT']` to integer to prevent adding 80 or 443 port to redirect URL. #437

## [1.0.1] - 2024-09-05

### Fixed
- Fix JWT decode of non JWT tokens #428
- Fix method signatures #427
- Cast `$_SERVER['SERVER_PORT']` to integer to prevent adding 80 or 443 port to redirect URL. #403
- Check subject when verifying JWT #406
- Removed duplicate check on jwks_uri and only check if jwks_uri exists when needed #373

## [1.0.0] - 2023-12-13

### Added
- PHP 7.0 is required. #327
- Support for signed and encrypted UserInfo response and ID Token. #305
- Allow to set User-Agent header. #370

### Fixed
- User-Agent is set for any HTTP method in fetchURL() (not just POST). #382
- Update visibility of getWellKnownConfigValue to protected. #363
- Fixed issue on authentication for php8. #354
- Update construct typehint in docblock. #364
- Fixed LogoutToken verification for single value aud claims. #334
- Update well known config value function response types. #376

## [0.9.10] - 2022-09-30

### Fixed
- `private_key_jwt` and `client_secret_jwt` need to explicitly be enabled #331

## [0.9.9] - 2022-09-28

### Added
- Added support for back-channel logout. #302
- Added support for `private_key_jwt` Client Authentication method #322
- Added support for `client_secret_jwt` Client Authentication method #324
- Added PS512 encryption support #342

### Fixed
- Harden self-signed JWK header usage. #323

## [0.9.8] - 2022-08-05

### Fixed
- Do not use PKCE if IdP does not support it. #317

## [0.9.7] - 2022-07-13

## [Unreleased]
### Added
* Timeout is configurable via setTimeout method. This addresses issue #94.
* Add the ability to authenticate using the Resource Owner flow (with or without the Client ID and ClientSecret). This addresses issue #98
* Add support for HS256, HS512 and HS384 signatures
* Removed unused calls to $this->getProviderConfigValue("token_endpoint_…
- Support for Self-Contained JWTs. #308
- Support for RFC8693 Token Exchange Request. #275

### Fixed
- PHP 5.4 compatibility. #304
- Use session_status(). #306

## [0.9.6] - 2022-05-08

### Added
- Support for [phpseclib/phpseclib](https://phpseclib.com/) version **3**. #260
- Support client_secret on token endpoint with PKCE. #293
- Added new parameter to `requestTokens()` to pass custom HTTP headers #297

### Changed
- Allow serializing `OpenIDConnectClient` using `serialize()` #295

## [0.9.5] - 2021-11-24

### Changed
- signOut() Method parameter $accessToken -> $idToken to prevent confusion about access and id tokens usage. #127
- Fixed issue where missing nonce within the claims was causing an exception. #280

## [0.9.4] - 2021-11-21

### Added
- Enabled `client_secret_basic` authentication on `refreshToken()` #215
- Basic auth support for requestResourceOwnerToken #271

## [0.9.3] - 2021-11-20

### Added
- getRedirectURL() will not log a warning for PHP 7.1+ #179
- it is now possible to disable upgrading from HTTP to HTTPS for development purposes by calling `setHttpUpgradeInsecureRequests(false)` #241
- bugfix in getSessionKey when _SESSION key does not exist #251
- Added scope parameter to refresh token request #225
- bugfix in `verifyJWTclaims` when $accessToken is empty and $claims->at_hash is not #276
- bugfix with the `empty` function in PHP 5.4 #267

## [0.9.2] - 2020-11-16

### Added
- Support for [PKCE](https://tools.ietf.org/html/rfc7636). Currently, the supported methods are 'plain' and 'S256'.

## [0.9.1] - 2020-08-27

### Added
- Add support for MS Azure Active Directory B2C user flows

### Changed
- Fix at_hash verification #200
- Getters for public parameters #204
- Removed client ID query parameter when making a token request using Basic Auth
- Use of `random_bytes()` for token generation instead of `uniqid()`; polyfill for PHP < 7.0 provided.

### Removed
- Removed explicit content-length header - caused issues with proxy servers

## [0.9.0] - 2020-03-09

### Added
- php 7.4 deprecates array_key_exists on objects, use property_exists in getVerifiedClaims and requestUserInfo
- Adding a header to indicate JSON as the return type for userinfo endpoint #151
- ~Updated OpenIDConnectClient to conditionally verify nonce #146~
- Add possibility to change enc_type parameter for http_build_query #155
- Adding OAuth 2.0 Token Introspection #156
- Add optional parameters clientId/clientSecret for introspection #157 & #158
- Adding OAuth 2.0 Token Revocation #160
- Adding issuer validator #145
- Adding signing algorithm PS256 #180
- Check http status of request user info #186
- URL encode clientId and clientSecret when using basic authentication, according to https://tools.ietf.org/html/rfc6749#section-2.3.1 #192
- Adjust PHPDoc to state that null is also allowed #193

### Changed
- Bugfix/code cleanup #152
- Cleanup PHPDoc #46e5b59
- Replace unnecessary double quotes with single quotes #2a76b57
- Use original function names instead of aliases #1f37892
- Remove unnecessary default values #5ab801e
- Explicit declare field $redirectURL #9187c0b
- Remove unused code #1e65384
- Fix indent #e9cdf56
- Cleanup conditional code flow for better readability #107f3fb
- Added strict type comparisons #167
- Bugfix: required `openid` scope was omitted when additional scopes were registered using `addScope` method. This resulted in failing OpenID process.

## [0.8.0] - 2019-01-02

### Added
- Fix `verifyJWTsignature()`: verify JWT to prevent php errors and warnings on invalid token

### Changed
- Decouple session manipulation, it's allow use of other session libraries #134
- Broaden version requirements of the phpseclib/phpseclib package. #144

## [0.7.0] - 2018-10-15

### Added
- Add "license" field to composer.json #138
- Ensure key_alg is set when getting key #139
- Add option to send additional registration parameters like post_logout_redirect_uris. #140

### Changed
- disabled autoload for Crypt_RSA + make refreshToken() method tolerant for errors #137

## [0.6.0] - 2018-07-17

### Added
- Added five minutes leeway due to clock skew between openidconnect server and client.
- Fix save access_token from request in implicit flow authentication #129
- `verifyJWTsignature()` method private -> public #126
- Support for providers where provider/login URL is not the same as the issuer URL. #125
- Support for providers that has a different login URL from the issuer URL, for instance Azure Active Directory. Here, the provider URL is on the format: https://login.windows.net/(tenant-id), while the issuer claim actually is on the format: https://sts.windows.net/(tenant-id).

### Changed
- refreshToken method update #124

## [0.5.0] - 2018-04-09

### Added
- Implement Azure AD B2C Implicit Workflow

## [0.4.1] - 2018-02-16

### Changed
- Documentation updates for include path.

## [0.4.0] - 2018-02-15

### Added
- Timeout is configurable via setTimeout method. This addresses issue #94.
- Add the ability to authenticate using the Resource Owner flow (with or without the Client ID and ClientSecret). This addresses issue #98
- Add support for HS256, HS512 and HS384 signatures
- Removed unused calls to $this->getProviderConfigValue("token_endpoint_…
Loading