title: Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° ÑÐµÑÐ²ÐµÑÐ½Ð¾Ð¹ ÑÐ°ÑÑÐ¸ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿ÑÐµÐ´Ð¾ÑÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð½ÑÐµÑÐ°ÐºÑÐ¸Ð²Ð½Ð¾Ð¹ ÑÑÐµÐ´Ñ ÐºÐ»Ð¸ÐµÐ½ÑÐ°Ð¼ HTTP API
title: Ð²ÑÐ¿ÑÑÐºÐ½Ð°Ñ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð±Ð°ÐºÐ°Ð»Ð°Ð²ÑÐ°
titleType: Subtitle
title: Development of the backend of the application to provide an interactive environment to HTTP API clients
Creators: name: Ð§ÑÑÐ¸Ð½, ÐÐ¼Ð¸ÑÑÐ¸Ð¹
Publisher: name: Ð¡Ð°Ð½ÐºÑ-ÐÐµÑÐµÑÐ±ÑÑÐ³ÑÐºÐ¸Ð¹ Ð¿Ð¾Ð»Ð¸ÑÐµÑÐ½Ð¸ÑÐµÑÐºÐ¸Ð¹ ÑÐ½Ð¸Ð²ÐµÑÑÐ¸ÑÐµÑ ÐÐµÑÑÐ° ÐÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾
Year: 2022
Subjects: Ð´Ð¾ÑÑÑÐ¿Ð½Ð¾ÑÑÑ ÑÐµÑÐ²Ð¸ÑÐ°
Ð¸Ð½ÑÐµÑÐ°ÐºÑÐ¸Ð²Ð½ÑÐµ ÑÑÐµÐ´Ñ
Ð¾Ð±ÑÑÐ°ÑÑÐ¸Ðµ ÑÑÐµÐ´Ñ
Ð¿Ð¾Ð²ÐµÑÑ Ð½Ð¾ÑÑÑ Ð°ÑÐ°ÐºÐ¸
Ð¼Ð½Ð¾Ð³Ð¾ÑÑÐ¾Ð²Ð½ÐµÐ²Ð°Ñ Ð°ÑÑ Ð¸ÑÐµÐºÑÑÑÐ°
service accessibility
interactive shells
learning shells
attack surface
layered architecture

description: Ð¢ÐµÐ¼Ð° Ð²ÑÐ¿ÑÑÐºÐ½Ð¾Ð¹ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð¾Ð¹ ÑÐ°Ð±Ð¾ÑÑ: Â«Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° ÑÐµÑÐ²ÐµÑÐ½Ð¾Ð¹ ÑÐ°ÑÑÐ¸ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿ÑÐµÐ´Ð¾ÑÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð½ÑÐµÑÐ°ÐºÑÐ¸Ð²Ð½Ð¾Ð¹ ÑÑÐµÐ´Ñ ÐºÐ»Ð¸ÐµÐ½ÑÐ°Ð¼ HTTP APIÂ». Ð¦ÐµÐ»ÑÑ ÑÐ°Ð±Ð¾ÑÑ ÑÐ²Ð»ÑÐµÑÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° Ð¿ÑÐ¾ÑÐ¾ÑÐ¸Ð¿Ð° ÑÐµÑÐ²ÐµÑÐ½Ð¾Ð¹ ÑÐ°ÑÑÐ¸ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ, ÐºÐ¾ÑÐ¾ÑÐ¾Ðµ Ð±ÑÐ´ÐµÑ Ð¿ÑÐµÐ´Ð¾ÑÑÐ°Ð²Ð»ÑÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÑÐ¸ÐºÐ°Ð¼ ÑÐµÑÐ²Ð¸ÑÐ¾Ð² Ñ HTTP API Ð¿Ð»Ð°ÑÑÐ¾ÑÐ¼Ñ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸ ÑÐ¿ÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð½ÑÐµÑÐ°ÐºÑÐ¸Ð²Ð½ÑÐ¼Ð¸ ÑÑÐµÐ´Ð°Ð¼Ð¸. ÐÑÐ¾ÑÐ¾ÑÐ¸Ð¿ Ð´Ð¾Ð»Ð¶ÐµÐ½ Ð´Ð°Ð²Ð°ÑÑ Ð¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°ÑÐµÐ»ÑÐ¼ Ð¸Ð½ÑÐµÑÐ°ÐºÑÐ¸Ð²Ð½ÑÑ ÑÑÐµÐ´ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ Ð¸ÑÐ¿Ð¾Ð»Ð½ÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð½Ð° ÑÐ·ÑÐºÐµ Python, Ð° ÑÐ°ÐºÐ¶Ðµ Ð´Ð°Ð²Ð°ÑÑ Ð´Ð¾ÑÑÑÐ¿ Ðº HTTP API ÑÐµÑÐ²Ð¸ÑÐ°, Ð±ÐµÐ· Ð½ÐµÐ¾Ð±ÑÐ¾Ð´Ð¸Ð¼Ð¾ÑÑÐ¸ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð¸Ð¼Ð¸ API ÐºÐ»ÑÑÐ°. ÐÐ°Ð´Ð°ÑÐ¸, ÐºÐ¾ÑÐ¾ÑÑÐµ ÑÐµÑÐ°Ð»Ð¸ÑÑ Ð² ÑÐ¾Ð´Ðµ ÑÐ°Ð±Ð¾ÑÑ: ÐÑÐ¾Ð²ÐµÑÑÐ¸ ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ðµ ÑÑÐµÐ´ÑÑÐ² Ð¿Ð¾Ð²ÑÑÐµÐ½Ð¸Ñ Ð´Ð¾ÑÑÑÐ¿Ð½Ð¾ÑÑÐ¸ Ð¸ Ð²ÑÑÐ²Ð¸ÑÑ Ð½ÐµÐ´Ð¾ÑÑÐ°ÑÐºÐ¸ ÑÑÑÐµÑÑÐ²ÑÑÑÐ¸Ñ ÑÐµÑÐµÐ½Ð¸Ð¹. ÐÐ¿Ð¸ÑÐ°ÑÑ ÐºÐ¾Ð½ÑÐµÐ¿ÑÐ¸Ñ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸ ÑÐ¾ÑÑÐ°Ð²Ð¸ÑÑ Ð¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°ÑÐµÐ»ÑÑÐºÐ¸Ðµ ÑÑÐµÐ½Ð°ÑÐ¸Ð¸ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ. ÐÐ·ÑÑÐ¸ÑÑ Ð²Ð¸Ð´Ñ ÑÐµÑÐ²ÐµÑÐ½ÑÑ Ð°ÑÑÐ¸ÑÐµÐºÑÑÑ Ð¸ Ð¿ÑÐ°ÐºÑÐ¸ÐºÐ¸ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¾ÑÐºÐ°Ð·Ð¾ÑÑÑÐ¾Ð¹ÑÐ¸Ð²ÑÑ, Ð¼Ð°ÑÑÑÐ°Ð±Ð¸ÑÑÐµÐ¼ÑÑ Ð¸ Ð±ÐµÐ·Ð¾Ð¿Ð°ÑÐ½ÑÑ ÑÐ¸ÑÑÐµÐ¼, Ð·Ð°ÑÐµÐ¼ Ð¾Ð¿ÑÐµÐ´ÐµÐ»Ð¸ÑÑ Ð½Ð°Ð¸Ð±Ð¾Ð»ÐµÐµ Ð¿Ð¾Ð´ÑÐ¾Ð´ÑÑÐ¸Ðµ Ð¸Ð· Ð½Ð¸Ñ Ð´Ð»Ñ Ð¾Ð¿Ð¸ÑÐ°Ð½Ð½ÑÑ ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ð¹. Ð¡Ð¿ÑÐ¾ÐµÐºÑÐ¸ÑÐ¾Ð²Ð°ÑÑ Ð°ÑÑÐ¸ÑÐµÐºÑÑÑÑ ÑÐ¸ÑÑÐµÐ¼Ñ. ÐÑÐ±ÑÐ°ÑÑ ÑÑÐµÐº ÑÐµÑÐ½Ð¾Ð»Ð¾Ð³Ð¸Ð¹, Ñ ÑÑÐµÑÐ¾Ð¼ Ð¿Ð¾ÑÑÐ°Ð²Ð»ÐµÐ½Ð½ÑÑ ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ð¹ Ð¸ ÑÐµÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°ÑÑ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ðµ. ÐÑÐ¾Ð²ÐµÑÑÐ¸ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ðµ Ð¿ÑÐ¾ÑÐ¾ÑÐ¸Ð¿Ð° Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð½Ð° ÑÐ¾Ð¾ÑÐ²ÐµÑÑÑÐ²Ð¸Ðµ ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸ÑÐ¼. Ð ÑÐµÐ·ÑÐ»ÑÑÐ°ÑÐµ, ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ð½ÑÐ¹ Ð¿ÑÐ¾ÑÐ¾ÑÐ¸Ð¿ Ð¿ÑÐ¾Ð´ÐµÐ¼Ð¾Ð½ÑÑÑÐ¸ÑÐ¾Ð²Ð°Ð» Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð±ÐµÐ·Ð¾Ð¿Ð°ÑÐ½Ð¾Ð¹ Ð¸ Ð¼Ð°ÑÑÑÐ°Ð±Ð¸ÑÑÐµÐ¼Ð¾Ð¹ Ð¿Ð»Ð°ÑÑÐ¾ÑÐ¼Ñ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸ ÑÐ¿ÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð½ÑÐµÑÐ°ÐºÑÐ¸Ð²Ð½ÑÐ¼Ð¸ ÑÑÐµÐ´Ð°Ð¼Ð¸ Ð´Ð»Ñ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÑÐ¸ÐºÐ¾Ð² HTTP API, Ð° ÑÐ°ÐºÐ¶Ðµ Ð¿Ð¾ÐºÐ°Ð·Ð°Ð» ÑÐµÐ»ÐµÑÐ¾Ð¾Ð±ÑÐ°Ð·Ð½Ð¾ÑÑÑ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÑÐ°ÐºÐ¾Ð³Ð¾ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ.
description: Topic of the graduate qualification work: "Development of the server side of the application to provide an interactive environment to HTTP API clients". The aim of the work is to develop a prototype of the server part of the application, which will provide developers of services with HTTP API a platform for creating and managing interactive environments. The prototype should allow users of interactive environments to execute commands in the Python language, as well as give access to the HTTP API of the service, without the need to obtain an API key. Tasks that were solved during the work:Compare the means of increasing availability and identify the shortcomings of existing solutions. Describe the concept of the application and write user scenarios for the application. Study the types of server architectures and practices for creating fault-tolerant, scalable, and secure systems, then determine the most suitable ones for the described requirements. Design the architecture of the system. Select a technology stack, considering the requirements and implement the application. Test the application prototype for compliance with the requirements. As a result, the developed prototype demonstrated the possibility of creating a secure and scalable platform for creating and managing interactive environments for HTTP API developers and showed the feasibility of creating such an application.