OAS 2 此页面适用于 OpenAPI 规范版本 2(以前称为 Swagger)。
要了解最新版本,请访问 OpenAPI 3 页面

基本身份验证

基本身份验证 是一个非常简单的身份验证方案,它内置于 HTTP 协议中。客户端发送包含 Authorization 标头的 HTTP 请求,该标头包含 Basic 关键字,后跟一个空格和一个 base64 编码的 username:password 字符串。例如,包含 demo / p@55w0rd 凭据的标头将被编码为
Authorization: Basic ZGVtbzpwQDU1dzByZA==

注意: 由于 base64 容易解码,因此基本身份验证只能与其他安全机制(如 HTTPS/SSL)一起使用。

基本身份验证很容易定义。在全局 securityDefinitions 部分,添加一个条目,其中 type: basic 和一个任意名称(在本例中为 basicAuth)。然后,使用 security 部分将安全性应用于整个 API 或特定操作。

securityDefinitions:
  basicAuth:
    type: basic

# To apply Basic auth to the whole API:
security:
  - basicAuth: []

paths:
  /something:
    get:
      # To apply Basic auth to an individual operation:
      security:
        - basicAuth: []
      responses:
        200:
          description: OK (successfully authenticated)

401 响应

您还可以定义针对缺少或不正确的凭据的请求返回的 401“未授权”响应。此响应包括 WWW-Authenticate 标头,您可能需要提及它。与其他常见响应一样,可以在全局 responses 部分定义 401 响应,并从多个操作中引用它。
paths:
  /something:
    get:
      ...
      responses:
        ...
        401:
           $ref: '#/responses/UnauthorizedError'
    post:
      ...
      responses:
        ...
        401:
          $ref: '#/responses/UnauthorizedError'
responses:
  UnauthorizedError:
    description: Authentication information is missing or invalid
    headers:
      WWW_Authenticate:
        type: string

  

没有找到您要查找的内容? 咨询社区
发现错误? 告诉我们