mirror of
https://github.com/openziti/ziti.git
synced 2026-09-24 03:16:23 +00:00
3380807334
- enables /authenticate?method=ext-jwt - adds ext-jwt to OpenAPI schema - rebase to main, squash
131 lines
3.1 KiB
YAML
131 lines
3.1 KiB
YAML
---
|
|
|
|
parameters:
|
|
authMethod:
|
|
name: method
|
|
in: query
|
|
required: true
|
|
type: string
|
|
enum:
|
|
- password
|
|
- cert
|
|
- ext-jwt
|
|
paths:
|
|
authenticate:
|
|
parameters:
|
|
- $ref: '#/parameters/authMethod'
|
|
post:
|
|
summary: Authenticate via a method supplied via a query string parameter
|
|
description: |
|
|
Allows authentication Methods include "password" and "cert"
|
|
security: [ ]
|
|
tags:
|
|
- Authentication
|
|
operationId: authenticate
|
|
parameters:
|
|
- name: auth
|
|
in: body
|
|
required: false
|
|
schema:
|
|
$ref: '#/definitions/authenticate'
|
|
responses:
|
|
'200':
|
|
$ref: './current-api-session.yml/#/responses/detailCurrentAPISession'
|
|
'400':
|
|
$ref: './standard-responses.yml#/responses/badRequestResponse'
|
|
'403':
|
|
$ref: './standard-responses.yml#/responses/invalidAuthResponse'
|
|
|
|
authenticate-mfa:
|
|
post:
|
|
summary: Complete MFA authentication
|
|
description: Completes MFA authentication by submitting a MFA time based one time token or backup code.
|
|
security:
|
|
- ztSession: [ ]
|
|
tags:
|
|
- Authentication
|
|
- MFA
|
|
operationId: authenticateMfa
|
|
parameters:
|
|
- name: mfaAuth
|
|
in: body
|
|
required: true
|
|
description: 'An MFA validation request'
|
|
schema:
|
|
$ref: '#/definitions/mfaCode'
|
|
responses:
|
|
'200':
|
|
$ref: './standard-responses.yml#/responses/emptyResponse'
|
|
'401':
|
|
$ref: './standard-responses.yml#/responses/emptyResponse'
|
|
responses:
|
|
$ref: 'standard-responses.yml#/responses'
|
|
|
|
definitions:
|
|
mfaCode:
|
|
type: object
|
|
required:
|
|
- code
|
|
properties:
|
|
code:
|
|
type: string
|
|
password:
|
|
type: string
|
|
minLength: 5
|
|
maxLength: 100
|
|
password-nullable:
|
|
type: string
|
|
minLength: 5
|
|
maxLength: 100
|
|
x-nullable: true
|
|
username:
|
|
type: string
|
|
minLength: 4
|
|
maxLength: 100
|
|
username-nullable:
|
|
type: string
|
|
minLength: 4
|
|
maxLength: 100
|
|
x-nullable: true
|
|
envInfo:
|
|
description: Environment information an authenticating client may provide
|
|
properties:
|
|
os:
|
|
type: string
|
|
arch:
|
|
type: string
|
|
osRelease:
|
|
type: string
|
|
osVersion:
|
|
type: string
|
|
type: object
|
|
sdkInfo:
|
|
description: SDK information an authenticating client may provide
|
|
properties:
|
|
type:
|
|
type: string
|
|
branch:
|
|
type: string
|
|
version:
|
|
type: string
|
|
revision:
|
|
type: string
|
|
appId:
|
|
type: string
|
|
appVersion:
|
|
type: string
|
|
type: object
|
|
authenticate:
|
|
type: object
|
|
description: A generic authenticate object meant for use with the /authenticate path. Required fields depend on authentication method.
|
|
properties:
|
|
username:
|
|
$ref: '#/definitions/username'
|
|
password:
|
|
$ref: '#/definitions/password'
|
|
envInfo:
|
|
$ref: '#/definitions/envInfo'
|
|
sdkInfo:
|
|
$ref: '#/definitions/sdkInfo'
|
|
configTypes:
|
|
$ref: 'config-types.yml#/definitions/configTypes' |