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

Request: Google OpenID 2.0->OIDC migration config option #29

Closed
terrencegf opened this issue Aug 27, 2014 · 2 comments
Closed

Request: Google OpenID 2.0->OIDC migration config option #29

terrencegf opened this issue Aug 27, 2014 · 2 comments

Comments

@terrencegf
Copy link

In order to migrate from Google OpenID 2.0 to Google OAuth2/OIDC, Google provides a mechanism for getting BOTH OpenID 2.0 identifier AND Google OIDC identifier for a user. The process is documented at https://developers.google.com/accounts/docs/OpenID#adjust-uri .

Basically, the initial authentication request URI can contain an additional parameter "openid.realm=https://..." This results in eventually returning a new "openid_id" field that contains the Google OpenID 2.0 identifier. By matching this against the "sub" field (the OIDC identifier), sites can migrate users from old OpenID 2.0 ids to new OIDC ids.

It would be really helpful if the configuration file could support something like "OIDCOpenIDRealm=https://...", then the code could get the openid_id and put it in the HTTP session headers.

@zandbelt
Copy link
Member

This can be configured with the current version already:

If you use Google as your single provider, you can add the openid.realm=<urlencoded-realm-value> parameter to the authentication requests in the OIDCAuthRequestParams primitive and that will result in a HTTP header called OIDC_CLAIM_openid_id with the requested value.

If you're using multiple OPs one of which is Google, you can create a file called accounts.google.com.conf in the metadata directory that looks like:

{
  "auth_request_params" : "openid.realm=<urlencoded-realm-value>"
}

Let me know if that works for you (a quick test did it for me).

@terrencegf
Copy link
Author

That works perfectly! Thanks very much for the quick reply. I'll close the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants