【发布时间】:2021-03-25 18:12:33
【问题描述】:
我正在使用spring-security-oauth2 授权服务器。我正在使用密码授权进行 oauth 身份验证。目前,这允许用户发送用户名和密码作为查询参数。这是不安全的,因为密码不受 HTTP 保护。为了处理这个问题,我的前端通过 HTTPS 将重要信息作为请求正文的一部分发送。
我们使用springfox-swagger2 来生成 API 规范。由于允许查询参数,因此规范会根据需要生成这些字段,如您在此 中看到的那样
规范还包含一个可选的主体: 我想知道有什么解决方法可以解决这个问题,因为我们会根据 swagger 规范自动生成打字稿模型,并且每次我们对规范进行任何更改时,都会替换类型的任何手动前端更改。
【问题讨论】:
-
我也不明白这里有什么问题。但它看起来像是一个过度设计的解决方案。为什么 API 需要密码授权和专用的身份验证方法?它看起来不太安全,因为 API 可以访问用户凭据。为什么你不使用内置的 swagger 身份验证选项swagger.io/docs/specification/authentication/oauth2,你可以在其中指定 IdP 详细信息,然后 API 只需要验证 JWT 令牌?
标签: spring spring-boot spring-security spring-security-oauth2