Управление доступом сотрудников Селектел к облачным серверам

Одной из сложных задач является определение границы доступа для сотрудников компании, предоставляющих услугу.

В общем случае бывает весьма полезно, если инженеры службы поддержки могут осуществить те или иные действия с облачным сервером — перезагрузка, подключение/отключение дисков, доступ к консоли и т.д.

Однако, это вызывает вполне понятные опасения. А что это они (а служба поддержки круглосуточная, то есть их не два и не пять человек) на консоль моего сервера смотрят? А если у меня там пароль или какая другая информация, которую я не хочу разглашать?

Таким образом, возникает противоречие между двумя благими пожеланиями. Добавим, что не смотря на довольно строгую политику по манипуляции с серверами клиентов (только после прямого подтверждения пожелания в тикете), всё равно остаётся тень сомнения. Человеческий фактор (рассеяность или злой умысел) вполне может нарушить любую корпоративную политику.

В таких ситуациях лучше всего работают технические средства.

Думаю, эта картинка объяснит больше, чем все последующие слова:

Установка прав доступа

Мы предоставили пользователю возможность самому управлять этими разрешениями. На новосозданном облачном сервере они таковы, инженерам запрещено:

  • менять настройки;
  • удалять/переустанавливать облачный сервер;
  • просматривать пароль root’а и вводить что-либо в консоли.

Инженерам по умолчанию разрешено просматривать консоль. Некоторые проблемы проявляют себя именно на консоли (например, туда выводятся сообщения ядра с приоритетом KERN_ERROR и выше). Это позволяет быстро ответить на вопрос «что не так», заданный в тикете.

Но все эти настройки можно поменять. Для этого используются разрешения (permissions). Для каждого из них можно установить срок действия (хоть час, хоть бессрочно). Можно так же запретить просмотр консоли.

Для удобства взаимодействия сотрудники службы поддержки могут отправить запрос на выполнение действий. У клиента появляется такой запрос:
Уведомление

Если нажать «разрешить», то разрешения выставятся на указанное время, а потом закончат свой срок действия. Если нажать «ингнорировать», то запрос будет отклонён.

На всякий случай, чтобы не было недоразумений: роботы используют свой интерфейс, в котором разрешения и запреты не действуют. Если робот обнаружит, что деньги закончились, то он выключит облачный сервер вне зависимости от того, есть разрешение или нет. Надеюсь, роботам люди доверяют больше, чем людям.

Что еще почитать по теме

T-Rex 30 марта 2021

Что такое SMTP-протокол и как он устроен?

SMTP (Simple Mail Transfer Protocol) — протокол передачи почты. Он был представлен еще в 1982 году, но не теряет актуальности до сих пор. В статье разбираемся, какие задачи решает протокол и как он ра…
T-Rex 30 марта 2021
Владимир Туров 1 сентября 2020

Дело совершенно секретного iPod

Это был обычный серый день в конце 2005 года. Я сидел на рабочем месте и писал код для следующей версии iPod. Вдруг без стука ворвался директор ПО для iPod, начальник моего начальника, и закрыл дверь.
Владимир Туров 1 сентября 2020
T-Rex 21 августа 2020

TrendForce: цены на SSD упадут

Эксперты DRAMeXchange предсказывают значительное падение цен на оперативную память и твердотельные накопители в ближайшее время. Причина — сокращение спроса на чипы для NAND и DRAM.
T-Rex 21 августа 2020

Новое в блоге

Сравнение способов организации мультиклауд-решений

Рассказываем о типах мультиклауд-решений и схемах подключения к зарубежным облакам

Готовые кластеры Kubernetes: легкий старт, автоматизация и другие преимущества перед self-hosted

Рассказываем, чем отличается Managed Kubernetes от самостоятельного развертывания инфраструктуры. Объясняем, кому подойдет решение.
T-Rex 18 мая 2022

Что такое терминальный сервер и зачем он нужен

Разбираемся, что такое терминальный сервер, чем он похож на VDI и как подобрать сервер под роль терминала.
T-Rex 18 мая 2022