-
Notifications
You must be signed in to change notification settings - Fork 828
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
feature: add client_auth_method=none into tokens for clients with empty secret - outdated #2435
Conversation
…ty secret e.g. cf client. This allows clients to see, whats really used. According to https://oauth.net/2.1/ the empty secret can be treated as public usage
We have created an issue in Pivotal Tracker to manage this: https://www.pivotaltracker.com/story/show/185787203 The labels on this github issue will be updated when the story is started. |
There are 2 PRs which same goal but different approaches. Goal. Add information about "dummy" authentication to clients so that we have this information in case of token exchanges. Approaches: With this information we can later fix the issue from #2193 . The names are taken from https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication . So none is defined for public flows. If we do empty secret authentication, then internally it is an authentication, but with a dummy secret, so I currently would vote vor option a) , but wanted to have both PRs to check with you (from vmware) what would be your choice. |
I think comparing these two options:
|
I concur with Peter's recomendation to use #2435 (client_auth_method=none) Is there any prerequisities pending to merge 2435, or do we have a taret release/milestone to associate it with? |
I have to rebase it , but will you notify asap it is ready |
Thanks @strehle ! |
…dClientAuthToEmptySecrets
@peterhaochen47 @Tallicia I copied some tests from the brach or PR RefreshTokenSupportIntegrationTests.java This will fail here in the PR because: I introduced the public flow (with option allowpublic) and I also added the support for the refresh flow for public . But we have the existing behaviour with cf and empty secret and here we allow refresh but we dont treat this as public. So question: what should we do ? disallow refresh for cf clients ? or better go with empty ? |
I'm adding this to the agenda for tomorrow's meeting to better understand. Mostly I'm curious why we can not distinguish between NULL and empty/"" |
In this PR we set none and then the refresh flow for the cf client with an empty secret fails. Because by default the cf client does not have the allowpublic flag set to true and then the normal refresh flow fails. Here is the feature where a refresh flow without any secret can work #2138 But if we now set the empty secret to the mode that it seems it is public, then we loose the state to distinguish |
add client_auth_method=none into tokens for clients with empty secret
e.g. cf client.
This allows clients to see, whats really used.
According to https://oauth.net/2.1/ the empty secret can be treated as public usage
Advantage is, that public to public exchanges can now work, see #2193 .
If we restrict with #2193 the user_token grant, then public to public cannot be allowed without this feature
Similar PR #2447, which introduces a new method for empty