作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想将 oauth2 身份验证添加到我的 Web API,因此我创建了一个包含安全定义的规范:
"securityDefinitions": {
"OauthSecurity": {
"type": "oauth2",
"authorizationUrl": "http://localhost/oauth/dialog",
"flow": "implicit",
"scopes": {
"admin": "Admin scope",
"user": "User scope",
"media": "Media scope"
}
}
},
"security": [
{
"OauthSecurity": [
"user"
]
}
],
所以它在我的 API 上生成了一些注释:
@io.swagger.annotations.Authorization(value = "OauthSecurity", scopes = {
@io.swagger.annotations.AuthorizationScope(scope = "user", description = "User scope")
})
那么我现在该如何继续?我仍然可以毫无问题地访问(curl,没有任何 header 或 token 或其他任何内容)我的 API。
当然,我可以创建 auth endpdoint,但我不知何故错过了生成的 API 和 oauth 之间的链接。
最佳答案
已经有一段时间了,根据 this ,通过使用 OpenAPI 3.0,您可以执行以下操作:
components:
securitySchemes:
oAuthSample: # <---- arbitrary name
type: oauth2
description: This API uses OAuth 2 with the implicit grant flow. [More info](https://api.example.com/docs/auth)
flows:
implicit: # <---- OAuth flow(authorizationCode, implicit, password or clientCredentials)
authorizationUrl: https://api.example.com/oauth2/authorize
scopes:
read_pets: read your pets
write_pets: modify pets in your account
我目前正在使用Bearer Auth ,效果非常好。
希望对你有帮助!
关于java - swagger oauth 明白了,那么现在怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38746372/
我是一名优秀的程序员,十分优秀!