Dear all,
As oAuth 2-18 specification is ready, I have some suggestions for updating Amber to match with this specification. This is only my first experience with Amber, so please give me your feedbacks as details as possible. Thank you all in advance. In my opinion, the changes should be performed on 3 main processes, mostly related to validators:
i) Authorization request: there is no more code and token request type,
+ The class CodeTokenValidator is obsolete and could be removed
+ In OAuthTokenRequest.initValidator remove the line put ResponseType.CODE_AND_TOKEN in validators. ii) Access Token request: the authentication between the client and authorization enpoint could be happened earlier (Authorization header will be shown in each request from client) in this case, the client_id or client_secret will not be considered as required parameters in each access token request as well as the redirect_uri which is also provided in registration process. + My suggestion are removing redirect_url as required parameter and adding an authorization header check in AbstractValidator, in each constructor of derived validator check the existence of authorization header in the request, to decide to add client_id or client_secret as required parameters or not. The validators involved are: AbstractValidator, AuthorizationCodeValidator, PasswordValidator, AssertionValidator (only grant_type is required), RefreshTokenValidator + There is a newly added profile “client credentials” with grant_type=client_credentials, which is reserved only for private client and required only the validation of grant_type value. So we could • Add a new validator class inherit from AbstractValidator, may be ClientCredentialValidator with grant_type is set as required parameter.
• Add an enum to GrantType
• In OAuthTokenRequest.initValidator, add this enum value in validator.
iii) Client registration: a new section for client registration is created in oAuth 2-18 (the status is still Pending consensus) requires the custom provide the custom type when perform registration. Could we consider of adding it to existing client registration code? Besides, I think we should change oauth_token to access_token in BodyTokenExtractor.getAccessToken and QueryTokenExtractor.getAccessToken of resource server because oauth_token is no more used.
Waiting for your opinion.
Thanks and kind regards,
Tien.

Reply via email to