openapi: 3.0.0 info: version: 1.0.0 title: nstportal api description: Nst Portal api discriber contact: name: New Safty Technology email: support@newinfosec.ru url: 'https://www.newinfosec.ru' license: name: Apache 2.0 url: 'https://www.apache.org/licenses/LICENSE-2.0.html' servers: - url: / security: - cookieAuth: [] - CSRFtoken: [] paths: '/getconf/': get: security: [] description: Returns all connection params for reqested session operationId: getConf parameters: - name: sid in: query # path will also works required: true style: form schema: $ref: '#/components/schemas/Sid' responses: '200': description: config response content: application/json: schema: $ref: '#/components/schemas/Config' default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' post: security: [] description: Returns all connection params for reqested session operationId: getConf parameters: - name: sid in: query # path will also works required: true style: form schema: $ref: '#/components/schemas/Sid' responses: '200': description: config response content: application/json: schema: $ref: '#/components/schemas/Config' default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' components: schemas: Answer: description: Base for any server answers type: string enum: ['setconf', 'getconf', 'error'] Sid: description: | Sid(token) - случайный набор байт(64) в формате base64 urlsafe, подписанный hmac-sha256 type: string example: "xvwuWLOqAwIK2rlw9OoMLteD5aWKdzXbbApzLRKop4Vooc4CmEV3ZP9sHlrYMVHdNbHHdS9YtH5DFVycSZQmWG_TqjtRd06e2AQJ1OugAsdbWe7_p6GZ-9qO74k5CTkD" Config: required: - answer properties: answer: $ref: '#/components/schemas/Answer' settings: $ref: '#/components/schemas/Settings' host: type: string example: localhost description: адрес конечного ресурса или SI login: type: string password: type: string port: type: integer proto: type: string enum: ['ssh', 'rdp', 'http'] sid: $ref: '#/components/schemas/Sid' Settings: properties: pcb: type: boolean fntlm: type: boolean nowallp: type: boolean nowdrag: type: boolean nomani: type: boolean notheme: type: boolean nonla: type: boolean notls: type: boolean dtsize: type: string example: "1280x720" libsettings: $ref: '#/components/schemas/LibSettings' LibSettings: description: | "https://github.com/FreeRDP/FreeRDP/blob/master/libfreerdp/core/settings.c" properties: a: type: integer enum: [ 0, 1 ] Error: required: - message properties: message: type: string securitySchemes: cookieAuth: type: apiKey in: cookie name: portal_user CSRFtoken: type: apiKey in: cookie name: xsrf