Инструменты: зависимость Swagger для OpenApi 3.0.2 maven:
<groupId>io.swagger.codegen.v3</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<version>3.0.16</version>
язык: jaxrs-cxf
Использование последних шаблонов, извлеченных из здесь
Я определил свой объект oauth в своих спецификациях и назначил его методу:
paths:
/endpoint:
method:
operationId: functionName
security:
- oauthSample:
- aScope
components:
securitySchemes:
oauthSample:
type: oauth2
flows:
authorizationCode:
authorizationUrl: {someurl}
tokenUrl: {someurl}
refreshUrl: {someurl}
scopes:
aScope: a scope
Я ожидаю, что в сгенерированном коде Java будет иметь:
functionName(other params of the endpoint function, @HeaderParam("Authorization") String var4, ...)
Кроме нет ничего связанного с этим сгенерированным объектом безопасности. Обходным путем может быть также добавление заголовка авторизации в безопасности конечной точки. Но тогда определение схемы безопасности oauth бесполезно (с точки зрения сгенерированного кода) и вводит в заблуждение (с точки зрения спецификаций, поскольку будет и аутентификация oauth и авторизация / Basi c через схему заголовка Authorization).
Я что-то упустил?
Я открыл проблему здесь , за исключением того, что это для openapitools, а не для swagger v3 (потому что openapitools, очевидно, является развилкой swagger v2 и способом продвижения вперед) , Но я был бы счастлив иметь реальную поддержку объектов безопасности, будь то на одном или другом:)