问题描述
我目前正在使用quarkus-smallrye-openapi提供的Quarkus和Swagger-UI。
我们有来自Azure AD的OIDC作为安全性,而Swagger-UI目前不支持该OIDC(请参见Swagger-Docs),因此我无法将“真实”授权添加到swagger。
这意味着,我不能使用Swagger,因为我的端点至少受@RolesAllowed
保护。
我们有一个端点来获取模拟安全性令牌,但是我不知道如何告诉摇摇欲坠地使用该令牌。
基本上,我想告诉swagger-ui“这里,我有这个令牌,将它作为Authorization: Bearer XXX
添加到所有请求中”,但是我不知道如何在Quarkus中做到这一点。
解决方法
- 注册安全方案
seconds
- 用已注册的方案名称标记操作的安全要求。
@Path("/sample")
@SecuritySchemes(value = {
@SecurityScheme(securitySchemeName = "apiKey",type = SecuritySchemeType.HTTP,scheme = "Bearer")}
)
public class SampleResource {