Created by: davidwcarlson
Fix proposed for Issue OpenAPITools#457 Similar to Issue OpenAPITools#1446 for typescript, Issue OpenAPITools#1577 for python
Specs defined as follows currently generate HttpBasicAuth
and send an
Authorization: Basic [base64Encode(username + ":" + password)]
header
components:
securitySchemes:
bearer:
type: http
scheme: bearer
This change will generate code which uses a new HttpBearerAuth
class, which will send an Authorization: [scheme] [accessToken]
header.
This change is slightly larger and more impactful than reusing the OAuth
when CodegenSecurity.bearerBearer
is true, but it allows for scheme values other than bearer.
This fix was enabled by the recent commit of OpenAPITools@80ca67c
This PR is an alternative to PR OpenAPITools#1972
PR checklist
-
Read the contribution guidelines. -
Ran the shell script under ./bin/
to update Petstore sample so that CIs can verify the change. (For instance, only need to run./bin/{LANG}-petstore.sh
and./bin/security/{LANG}-petstore.sh
if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates). Windows batch files can be found in.\bin\windows\
. -
Filed the PR against the correct branch: master
,. Default:3.4.x
,4.0.x
master
. -
Copied the technical committee to review the pull request if your PR is targeting a particular programming language.
Description of the PR
(details of the change, additional tests that have been done, reference to the issue for tracking, etc) Add a new Auth type for Bearer so that api specs using Bearer Authentication https://swagger.io/docs/specification/authentication/bearer-authentication/ use the correct auth (was BasicAuth).
Copying the Java technical committee as this is a change targeted to Java. @bbdouglas @JFCote @sreeshas @jfiala @lukoyanov @cbornet @jeff9finger