Comments (11)
I would like to add that this library (without modifications) does not work with Azure AD, although it has been OpenID Certified. This is due to the fact that the provider (discovery) URL given to OpenIDConnectClient is on the https://login.microsoftonline.com/ domain (see: https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-protocols-openid-connect-code), while the token issuer is https://sts.windows.net/ (https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-token-and-claims#idtokens). This does (possibly) not apply to version 2 tokens.
It will work if you change the provider URL between redirecting to the authorize endpoint and the validation of the JWT token.
I'll add this to the relevant wiki page.
from openid-connect-php.
Good question @zmon. I'm interested as well. I'd like to add a list to the documentation. Thanks for starting this thread.
from openid-connect-php.
Re: the Google integration. Like @zmon I just use 'accounts.google.com' for the provider_url variable. The README shows a scheme and hostname like https://accounts.google.com. Which is it? I think when I first set it up I used https://accounts.google.com and it didn't work so I went with the bare name of accounts.google.com. Just today, I found that the claims validation was failing because Google is sending back the https://accounts.google.com address as the issuer and this doesn't match what's in the constructor.
from openid-connect-php.
@billsimon I just went back to my code (which has not changed since testing my pull request) and found that accounts.google.com failed... Adding the https fixed it. They must of changed something.
from openid-connect-php.
@jumbojett Added a wiki page for a list of providers.
from openid-connect-php.
Google's in the middle of testing for certification with the OpenID Foundation, so I wouldn't be surprised if they were fixing a bunch of slightly-off-spec things in the process (like the issuer value which is supposed to always start with https).
from openid-connect-php.
Nice timing... I guess it's always the middle of the afternoon somewhere in the world. OK, thanks for the confirmation. I was puzzled.
from openid-connect-php.
A list of implementations have been granted certification by OpenID
from openid-connect-php.
A list of implementations have been granted certification by OpenID
@zmon Good find!
from openid-connect-php.
@christiaangoossens Mind sharing which changes are explicit necessary to get this working? THX
from openid-connect-php.
@DeepDiver1975 As far as I remember, I just switched out the issuer before the checking part.
from openid-connect-php.
Related Issues (20)
- default value for getProviderConfigValue is supposed to be string, but is array HOT 2
- Add information to README.md
- Bugs - Azure B2C - URL char issue HOT 2
- Issue when running composer require jumbojett/openid-connect-php HOT 1
- signout() does not sign me out of my application HOT 9
- requestClientCredentialsToken invalid scope in Keycloak HOT 2
- Throwed error if the server returns one is complete HOT 1
- OpenID Connect can return an id_token as part of the refresh_token grant type
- Keycloak 22.0 not supported? HOT 5
- Release new major ... HOT 1
- Cant get codeVerifier in redirectUri if we make authorization flow using PKCE HOT 1
- SERVER_PORT always causes port in redirect URL HOT 4
- Redirect doesn't remove state, session_state, and code params HOT 2
- Support dropped for phpseclib 2.*? HOT 2
- Invalid Client - Connect Token HOT 1
- Support for `id_token_signing_alg_values_supported` HOT 1
- Return types are too strict
- requestTokenExchange error Passing null to parameter #2 of http_build_query
- Debug Mode ? HOT 1
- scopes attribut are NULL HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openid-connect-php.