github.com/thetreep/go-swagger@v0.0.0-20240223100711-35af64f14f01/fixtures/bugs/2919/edge-api/shared/current-identity-authenticators.yml (about)

     1  ---
     2  
     3  paths:
     4    current-identity-authenticators:
     5      get:
     6        summary: List authenticators for the current identity
     7        description: Retrieves a list of authenticators assigned to the current API session's identity; supports filtering, sorting, and pagination.
     8        security:
     9          - ztSession: [ ]
    10        tags:
    11          - Current API Session
    12        operationId: listCurrentIdentityAuthenticators
    13        parameters:
    14          - $ref: 'parameters.yml#/limit'
    15          - $ref: 'parameters.yml#/offset'
    16          - $ref: 'parameters.yml#/filter'
    17        responses:
    18          '200':
    19            $ref: 'authenticators.yml#/responses/listAuthenticators'
    20          '401':
    21            $ref: 'standard-responses.yml#/responses/unauthorizedResponse'
    22          '400':
    23            $ref: '../shared/standard-responses.yml#/responses/badRequestResponse'
    24    current-identity-authenticators-id:
    25      parameters:
    26        - $ref: 'parameters.yml#/id'
    27      get:
    28        summary: Retrieve an authenticator for the current identity
    29        description: Retrieves a single authenticator by id. Will only show authenticators assigned to the API session's identity.
    30        security:
    31          - ztSession: [ ]
    32        tags:
    33          - Current API Session
    34        operationId: detailCurrentIdentityAuthenticator
    35        responses:
    36          '200':
    37            $ref: 'authenticators.yml#/responses/detailAuthenticator'
    38          '404':
    39            $ref: 'standard-responses.yml#/responses/notFoundResponse'
    40          '401':
    41            $ref: 'standard-responses.yml#/responses/unauthorizedResponse'
    42      put:
    43        summary: Update all fields on an authenticator of this identity
    44        description: |
    45          Update all fields on an authenticator by id.  Will only update authenticators assigned to the API session's
    46          identity.
    47        security:
    48          - ztSession: [ ]
    49        tags:
    50          - Current API Session
    51        operationId: updateCurrentIdentityAuthenticator
    52        parameters:
    53          - name: authenticator
    54            in: body
    55            required: true
    56            description: 'An authenticator put object'
    57            schema:
    58              $ref: 'authenticators.yml#/definitions/authenticatorUpdateWithCurrent'
    59        responses:
    60          '200':
    61            $ref: 'standard-responses.yml#/responses/updateResponse'
    62          '400':
    63            $ref: 'standard-responses.yml#/responses/badRequestResponse'
    64          '404':
    65            $ref: 'standard-responses.yml#/responses/notFoundResponse'
    66          '401':
    67            $ref: 'standard-responses.yml#/responses/unauthorizedResponse'
    68      patch:
    69        summary: Update the supplied fields on an authenticator of this identity
    70        description: |
    71          Update the supplied fields on an authenticator by id. Will only update authenticators assigned to the API
    72          session's identity.
    73        security:
    74          - ztSession: [ ]
    75        tags:
    76          - Current API Session
    77        operationId: patchCurrentIdentityAuthenticator
    78        parameters:
    79          - name: authenticator
    80            in: body
    81            required: true
    82            description: An authenticator patch object
    83            schema:
    84              $ref: 'authenticators.yml#/definitions/authenticatorPatchWithCurrent'
    85        responses:
    86          '200':
    87            $ref: 'standard-responses.yml#/responses/patchResponse'
    88          '400':
    89            $ref: 'standard-responses.yml#/responses/badRequestResponse'
    90          '404':
    91            $ref: 'standard-responses.yml#/responses/notFoundResponse'
    92          '401':
    93            $ref: 'standard-responses.yml#/responses/unauthorizedResponse'
    94    current-identity-authenticators-id-extend:
    95      parameters:
    96        - $ref: 'parameters.yml#/id'
    97      post:
    98        summary: Allows the current identity to recieve a new certificate associated with a certificate based authenticator
    99        description: >-
   100          This endpoint only functions for certificates issued by the controller. 3rd party
   101          certificates are not handled.
   102          
   103          Allows an identity to extend its certificate's expiration date by
   104          using its current and valid client certificate to submit a CSR. This CSR may
   105          be passed in using a new private key, thus allowing private key rotation.
   106  
   107          The response from this endpoint is a new client certificate which the client must 
   108          be verified via the /authenticators/{id}/extend-verify endpoint.
   109          
   110          After verification is completion any new connections must be made with new certificate.
   111          Prior to verification the old client certificate remains active.
   112        security:
   113          - ztSession: [ ]
   114        operationId: extendCurrentIdentityAuthenticator
   115        parameters:
   116          - name: extend
   117            in: body
   118            required: true
   119            schema:
   120              $ref: '#/definitions/identityExtendEnrollmentRequest'
   121        tags:
   122          - Current API Session
   123          - Enroll
   124          - Extend Enrollment
   125        responses:
   126          '200':
   127            $ref: '#/responses/identityExtendEnrollmentResponse'
   128          '401':
   129            $ref: '../shared/standard-responses.yml#/responses/unauthorizedResponse'
   130  
   131    current-identity-authenticators-id-extend-verify:
   132      parameters:
   133        - $ref: 'parameters.yml#/id'
   134      post:
   135        summary: Allows the current identity to validate reciept of a new client certificate
   136        description: >-
   137          After submitting a CSR for a new client certificate the resulting public certificate
   138          must be re-submitted to this endpoint to verify receipt.
   139          
   140          After receipt, the new client certificate must be used for new authentication requests.
   141        security:
   142          - ztSession: [ ]
   143        operationId: extendVerifyCurrentIdentityAuthenticator
   144        parameters:
   145          - name: extend
   146            in: body
   147            required: true
   148            schema:
   149              $ref: '#/definitions/identityExtendValidateEnrollmentRequest'
   150        tags:
   151          - Current API Session
   152          - Enroll
   153          - Extend Enrollment
   154        responses:
   155          '200':
   156            $ref: '../shared/standard-responses.yml#/responses/emptyResponse'
   157          '401':
   158            $ref: '../shared/standard-responses.yml#/responses/unauthorizedResponse'
   159  
   160  responses:
   161    identityExtendEnrollmentResponse:
   162      description: A response containg the identity's new certificate
   163      schema:
   164        $ref: '#/definitions/identityExtendEnrollmentEnvelope'
   165  
   166  definitions:
   167    identityExtendValidateEnrollmentRequest:
   168      type: object
   169      required:
   170        - clientCert
   171      properties:
   172        clientCert:
   173          type: string
   174          description: A PEM encoded client certificate previously returned after an extension request
   175    identityExtendEnrollmentRequest:
   176      type: object
   177      required:
   178        - clientCertCsr
   179      properties:
   180        clientCertCsr:
   181          type: string
   182    identityExtendEnrollmentEnvelope:
   183      type: object
   184      properties:
   185        meta:
   186          $ref: '../shared/standard-responses.yml#/definitions/meta'
   187        data:
   188          $ref: '#/definitions/identityExtendCerts'
   189    identityExtendCerts:
   190      type: object
   191      properties:
   192        clientCert:
   193          type: string
   194          description: A PEM encoded client certificate
   195        ca:
   196          type: string
   197          description: A PEM encoded set of CA certificates