java - Open api 3 中的 OAuth/OIDC 与 Micronaut 招摇
问题描述
我正在尝试使用 Micronaut swagger 定义中的身份 OKTA 授权 API 端点。
下面是 OKTA 的配置
micronaut:
application:
name: demo
security:
authentication: idtoken
oauth2:
clients:
okta:
client-secret: '${OAUTH_CLIENT_SECRET}'
client-id: '${OAUTH_CLIENT_ID}'
openid:
issuer: '${OIDC_ISSUER_DOMAIN}/oauth2/${OIDC_ISSUER_AUTHSERVERID}'
endpoints:
logout:
get-allowed: true
对于安全模式,需要为 swagger 配置什么才能与 OKTA 一起使用。
@SecurityScheme(name = "Open Id Connect",
type = SecuritySchemeType.OAUTH2,
scheme = "bearer",
bearerFormat = "jwt",
flows = @OAuthFlows(
authorizationCode = @OAuthFlow(
authorizationUrl = "https://dev-6271510.okta.com/oauth2/default",
tokenUrl = "https://dev-6271510.okta.com/oauth2/default/v1/token",
refreshUrl = "",
scopes = {@OAuthScope(name = "openid"),
@OAuthScope(name = "profile"),
@OAuthScope(name = "email"),
@OAuthScope(name = "address"),
@OAuthScope(name = "phone"),
@OAuthScope(name = "offline_access")
}))
)
public class Application {}
这是当前屏幕,我如何映射client_id和client_secret,并且client_secret应该隐藏,范围也没有映射。
解决方案
推荐阅读
- bash - 当双引号前面有数字时,如何替换或注释 CSV 文件中的双引号
- python - Python 请求中的代理
- r - 如何将数据框转换为 DocumentTermMatrix?
- html - 引导购物车
- javascript - 在 Javascript 中处理多个图像后备
- scala - java.lang.IllegalStateException:在物化器关闭后尝试物化流
- android - 如何在 Snackbar 中实现这个效果
- azure - 在 Halyard 中添加 Azure 帐户失败。无法识别 Azure 订阅
- html - 单击后如何保持表单按钮处于选中状态?
- node.js - 错误{错误:未捕获(承诺):错误:找不到模块“./.../.module.ngfactory”