ПР. Права доступа и роли для сервисного аккаунта
Кратко:
- Создание сервисного аккаунта и получение прав на управление им.
- Создание и привязка к аккаунту авторизованных ключей.
- Создание ключа шифрования в Yandex Key Management Service (KMS).
- Назначение сервисному аккаунту роли kms.admin для управления ключом.
- Ротация ключа с помощью сервисного аккаунта.
- Работа с интерфейсом командной строки CLI Yandex Cloud для выполнения практической работы.
Практическая работа. Права доступа и роли для сервисного аккаунта
В этом уроке вы научитесь работать с сервисными аккаунтами и назначать для них роли и права доступа к объектам. В качестве объекта будет выступать созданный в Yandex Key Management Service (KMS) ключ шифрования. Подробнее об этом сервисе вы узнаете на одном из следующих занятий. А сейчас предположим, что перед вами стоит задача использовать для ротации ключей сервисный аккаунт.
Чтобы решить эту задачу, понадобится выполнить следующие шаги:
- Создать сервисный аккаунт.
- Получить права на управление этим сервисным аккаунтом.
- Создать и привязать к сервисному аккаунту авторизованные ключи.
- Создать в сервисе KMS ключ шифрования.
- Назначить сервисному аккаунту роль
kms.adminдля управления этим ключом. - И, наконец, ротировать ключ, то есть создать его новую версию, с помощью сервисного аккаунта.
Стоит заметить, что через консоль управления сервисному аккаунту можно назначить роль только на каталог, в котором он был создан. Роли на все остальные ресурсы назначаются с помощью CLI или API. Поэтому для выполнения этой практической работы вам понадобится вспомнить то, чему вы научились в курсе «DevOps и автоматизация», и поработать с интерфейсом командной строки CLI Yandex Cloud.
Ну что же, поехали!
Шаг 1
Для начала создайте сервисный аккаунт. Если на вашем компьютере ещё не установлена утилита yc (CLI Yandex Cloud), то сделайте это, руководствуясь инструкцией в документации.
Откройте терминал и выполните команду:
yc iam service-account create --name <имя_сервисного_аккаунта>
Требования к формату имени сервисного аккаунта:
- длина — от 3 до 63 символов;
- имя может содержать только строчные буквы латинского алфавита, цифры и дефисы;
- первый символ должен быть буквой;
- последний символ не должен быть дефисом.
Если вы хотите добавить создаваемому сервисному аккаунту описание, то в этом случае команда будет выглядеть, например, так:
yc iam service-account create --name security-labs \
--description "Service account for Security course labs"
Шаг 2
Сервисный аккаунт является ресурсом, и для работы с ним нужна соответствующая роль. Добавьте вашему аккаунту роль
editor на созданный сервисный аккаунт.-
Для начала убедитесь, что у вашего аккаунта есть роль
adminна облако. Конечно, если вы являетесь владельцем облака, то ваша роль —resource-manager.clouds.owner— включает разрешения всех остальных ролей и позволяет выполнять любые операции с облаком и ресурсами в нём.Проверить, какие роли в облаке у вас есть, можно с помощью команды:yc iam role list -
Чтобы назначить вашему аккаунту роль на сервисный аккаунт, нужно сначала узнать их идентификаторы.Получите идентификатор своего аккаунта с помощью команды:
yc iam user-account get <ваш_логин>Параметр<ваш_логин>— это логин или адрес электронной почты, под которым вы авторизуетесь в облаке. -
Получите идентификатор сервисного аккаунта, запустив команду …
yc iam service-account listили:yc iam service-account get <имя_сервисного_аккаунта> -
Теперь предоставьте вашему аккаунту права на управление созданным сервисным аккаунтом. Для этого нужно выполнить команду:
yc iam service-account add-access-binding <id_сервисного_аккаунта> \ --role editor \ --subject userAccount:<id_пользовательского_аккаунта>
Шаг 3
Теперь нужно настроить аутентификацию под сервисным аккаунтом на вашем компьютере.
-
Создайте авторизованные ключи, которые нужны, чтобы получать IAM-токен для сервисного аккаунта, и сохраните их в JSON-файле (например
key.json).Воспользуйтесь для этого командой:yc iam key create \ --service-account-name <имя_сервисного_аккаунта> \ --output key.json -
Создайте профиль CLI Yandex Cloud, который будет использоваться сервисным аккаунтом. Придумайте имя этого профиля (например
key-rotator) и выполните команду:yc config profile create <имя_профиля_сервисного_аккаунта> -
Привяжите к этому профилю созданные авторизованные ключи и укажите идентификатор вашего рабочего каталога в качестве каталога по умолчанию:
yc config set service-account-key key.json yc config set folder-id <идентификатор_рабочего_каталога> -
Чтобы убедиться, что всё сделано правильно, выведите информацию о параметрах профиля:
yc config list
Шаг 4
-
Создайте ключ шифрования, ротацией которого вы будете управлять с помощью сервисного аккаунта. Для этого в консоли управления облаком перейдите в дашборд вашего рабочего каталога, нажмите кнопку Создать ресурс (вверху справа) и выберите Ключ шифрования.В открывшемся окне задайте Имя ключа и нажмите кнопку Создать.

-
Выбрав созданный ключ на открывшейся странице Ключи, вы перейдёте на страницу Обзор с детальной информацией о нём.
-
Скопируйте идентификатор ключа, он понадобится вам на следующем шаге.

Шаг 5
-
Назначьте сервисному аккаунту роль
kms.adminдля управления созданным ключом шифрования. Перед этим нужно вернуться в профиль вашего аккаунта:yc config profile list yc config profile activate <имя_основного_профиля> -
Выполните команду:
yc kms symmetric-key add-access-binding \ --id <id_ключа_шифрования> \ --role kms.admin \ --subject serviceAccount:<id_сервисного_аккаунта>Теперь вы можете управлять этим ключом с помощью сервисного аккаунта.
Шаг 6
-
Переключитесь обратно в профиль сервисного аккаунта:
yc config profile activate <имя_профиля_сервисного_аккаунта> -
Ротируйте ключ шифрования:
yc kms symmetric-key rotate --id <id_ключа_шифрования> -
После выполнения команды вернитесь в консоль управления на страницу Обзор созданного ключа шифрования и перейдите на вкладку Операции.

Вы увидите, что операция по ротации ключа выполнена вашим сервисным аккаунтом. Значит всё получилось, и задача решена!
- Категория: Cloud Services Engineer
- Просмотров: 1660
Ресурсная модель и права доступа
Кратко:
- Ресурсная модель и права доступа контролируются с помощью сервиса IAM и ролевой модели RBAC.
- Роль - это набор разрешений, описывающих допустимые операции над ресурсом, назначаемые пользователю.
- Роли наследуются, разрешения от родительского ресурса действуют на дочерние ресурсы.
- В Yandex Cloud используются два типа ролей: примитивные и сервисные.
- Примитивные роли предназначены для быстрой настройки и тестирования, сервисные обеспечивают более гранулярный контроль.
- Роли могут быть назначены на объекты, для которых они предназначены, или на родительский ресурс.
- Владельцы облака и участники имеют разные роли, определяющие их доступ к облачным ресурсам.
- Сервис IAM использует роль iam.serviceAccounts.user для предоставления прав на использование сервисных аккаунтов.
Ресурсная модель и права доступа
Сервис IAM используется не только для того, чтобы контролировать доступ к облачным ресурсам. С его помощью также назначают права доступа. Для этого применяют ролевую модель управления доступом — RBAC (Role Based Access Control). То есть каждому пользователю можно назначить определённую роль для доступа к тому или иному ресурсу.
Ролевая модель
Во вводном курсе про виртуальные машины вы уже познакомились с ролевой моделью Yandex Cloud. Теперь разберем ее подробнее.
Роль — это набор разрешений, которые описывают допустимые операции над ресурсом. После назначения пользователю роли на ресурс он сможет выполнять заданный набор операций над этим ресурсом.
Роли на ресурс назначаются в виде списка связей «роль — субъект». Такие связи называются привязками прав доступа (access bindings), их можно добавлять и удалять, то есть контролировать права доступа к ресурсу.
Одна привязка — это назначение субъекту одной роли. Чтобы назначить пользователю несколько ролей на один ресурс, нужно задать отдельную привязку для каждой из них.

Роли наследуются: все разрешения от родительского ресурса переходят на его дочерние ресурсы. Например, если назначить пользователю роль на каталог, в котором есть виртуальная машина, то все разрешения этой роли будут действовать и для виртуальной машины.
Если у пользователя есть роли и на родительский, и на дочерний ресурс, то для дочернего ресурса будет действовать объединенный список разрешений. Иными словами, ограничить список разрешений, унаследованных от родительского ресурса, на уровне дочернего не получится.
В реализованной в Yandex Cloud ролевой модели имеется два типа ролей: примитивные (общие для всех сервисов) и сервисные (выдаются только на один сервис). Сервисные роли зависят от специфики каждого отдельного сервиса и могут назначаться на объекты, для которых эти роли предназначены. Некоторые сервисные роли назначаются на ресурс (например на ключ шифрования в сервисе KMS), а некоторые — только на контейнер, в котором размещены ресурсы (например роль
compute.admin назначается на каталог или облако).К примитивным ролям относятся:
-
viewer— позволяет просматривать информацию о ресурсе или список ресурсов, если назначена на каталог; -
editor— позволяет управлять ресурсами: создавать, изменять и удалять объекты; -
admin— позволяет управлять ресурсами и правами доступа к ним.
Примитивные роли стоит использовать только для быстрой настройки и тестирования инфраструктуры. Сервисные роли обеспечивают более гранулярный контроль, учитывающий специфику каждого отдельного сервиса.
Для каждого сервиса можно расписать структуру ролей в виде иерархии, где разрешения нижележащих ролей входят в обобщённые вышележащие роли.
Например, в сервисе управления ключами шифрования (KMS) реализована следующая структура ролей.

Примитивные роли
admin, editor, viewer позволяют управлять или просматривать информацию о сервисе в целом. Сервисные роли обеспечивают гранулированное разделение прав.Так, например, роль
kms.admin предоставляет права на администрирование ключей: их просмотр, создание, изменение, удаление, ротацию, шифрование и расшифрование данных. Она также позволяет назначать роль kms.keys.encrypterDecrypter на конкретные ключи. Роль kms.keys.encrypterDecrypter — пользовательская. Она позволяет выполнять операции шифрования и расшифрования для указанных ключей и просматривать информацию о ключе. Но управлять жизненным циклом ключей с ее помощью нельзя.Разрешения роли
kms.keys.encrypterDecrypter входят в разрешения ролей kms.admin и editor. А разрешения kms.admin входят в разрешения примитивной роли admin.Управление ролями
Владелец облака обладает ролью
resource-manager.clouds.owner. Она позволяет выполнять любые операции с облаком и ресурсами в нём.Вторая важная роль — это
resource-manager.clouds.member, участник облака. Она дает возможность пользователю с Яндекс ID пройти аутентификацию в облаке и необходима для выполнения операций с ресурсами. Например, если у пользователя есть роли resource-manager.clouds.member и editor, то он сможет управлять ресурсами облака. Но если роль resource-manager.clouds.member отозвать, то управлять уже не сможет, несмотря на наличие роли editor.Исключение здесь составляют ресурсы с публичным доступом. Для управления ими роль
resource-manager.clouds.member не требуется, доступ к ним можно предоставить иначе.Рассмотрим сценарий использования сервисных ролей на примере сервиса KMS.
-
Владелец (роль
resource-manager.clouds.owner) или администратор (рольadmin) облака назначает рольkms.adminадминистратору KMS. -
Администратор KMS создаёт необходимые ключи шифрования и назначает роли для их использования с помощью интерфейса командной строки (CLI) или API.
-
Пользователи или сервисные аккаунты получают роль
kms.keys.encrypterDecrypterна необходимые им ключи шифрования.
В самом сервисе IAM используется роль
iam.serviceAccounts.user. Эта роль предоставляет пользователю права на использование сервисных аккаунтов. Например, при создании группы виртуальных машин вы хотите использовать ваш сервисный аккаунт, у которого есть права на эту операцию, вместо своего пользовательского аккаунта. Сервис IAM проверяет, есть ли у вас разрешение на использование этого сервисного аккаунта, и разрешает или запрещает данную операцию.В роль
iam.serviceAccounts.user входит следующий набор разрешений:-
получение списка сервисных аккаунтов;
-
получение информации о сервисном аккаунте;
-
использование сервисного аккаунта при выполнении операций от его имени.
Основные теоретические знания о том, как работает сервис IAM, у вас теперь есть. На следующем уроке вы проверите, как это всё работает на практике.
- Категория: Cloud Services Engineer
- Просмотров: 835
Обзор сервиса IAM, типы аккаунтов
Кратко:
- Сервис Yandex Identity and Access Management (IAM) обеспечивает доступ пользователей к облачным ресурсам.
- Аутентификация включает проверку личности пользователя и может использовать пароль, физическое устройство или биометрические данные.
- Авторизация проверяет права пользователя на выполнение действий.
- Три типа аккаунтов: Яндекс ID, федерация удостоверений и сервисные аккаунты.
- Яндекс ID - единый аккаунт для всех сервисов Яндекса с cookie на домен верхнего уровня .yandex.
- Федерация удостоверений использует протокол SAML для хранения информации об аутентификации.
- Сервисные аккаунты используются для доступа к ресурсам от имени приложений и виртуальных машин.
- Аутентификация сервисного аккаунта может осуществляться с помощью авторизованных ключей, API-ключей или статических ключей доступа.
Обзор сервиса IAM, типы аккаунтов
Чтобы оградить дом или офис от нежданных гостей, люди придумали дверные замки: достаточно позаботиться о том, чтобы ключи не достались чужакам. В облаке примерно то же самое. Только в роли замка выступает сервис Yandex Identity and Access Management (IAM), который отвечает за доступ пользователей к вашим облачным ресурсам. На этом уроке мы рассмотрим, какие «ключи» используются для аутентификации пользователей в облаке и их авторизации в сервисах.
Аутентификация — это проверка, является ли входящий тем, за кого себя выдаёт. Для аутентификации может использоваться пароль, физическое устройство, сканирование биометрических данных. Если нужно обеспечить высокий уровень безопасности, используют двухфакторную аутентификацию.
Авторизация — это проверка прав на выполнение каких-либо действий. Например, DevOps-инженер Петров имеет права создавать и конфигурировать в облаке своей компании любые ресурсы, которые могут понадобиться. Но поскольку у Петрова нет прав на доступ к бакету бизнес-аналитика Васечкина в Object Storage, то пройти авторизацию и посмотреть, что же там хранится, он не сможет.
Теперь рассмотрим, как получить доступ к ресурсам Yandex Cloud. Предусмотрены три типа аккаунтов.
Тип 1. Учетная запись Яндекс ID. Это единый аккаунт для всех сервисов Яндекса, в котором хранятся личные данные пользователей, выполняется их аутентификация и авторизация. Если аутентификация прошла успешно, то Яндекс ID устанавливает в браузере пользователя cookie на домен верхнего уровня .yandex.
Когда вы входите в консоль управления Yandex Cloud, облако — точнее, сервис IAM — использует сookie Яндекс ID для аутентификации и, если она прошла успешно, устанавливает собственные cookie на поддомены cloud.yandex.TLD. В консоли эти cookie обмениваются на IAM-токены. IAM-токен — это информация для авторизации, подписанная секретным ключом IAM. Он содержит, например, ID пользователя, время жизни самого токена, ресурсы или сервисы, которые могут быть доступны с этим токеном. С помощью IAM-токена пользователь авторизуется в API Yandex Cloud и выполняет операции с ресурсами.
Если вы работаете в интерфейсе командной строки (CLI), то на вашем компьютере будет сохранен OAuth-токен Яндекс ID. Утилита
yc будет обменивать этот токен на IAM-токены со сроком жизни 12 часов для взаимодействия с API Yandex Cloud.Тип 2. Федерация удостоверений. Удостоверения (credentials) — это информация об атрибутах пользователей, таких как логин или адрес электронной почты, и способах аутентификации. При использовании федерации удостоверений они хранятся не у облачного провайдера, а у третьей доверенной стороны — поставщика удостоверений (IdP, Identity Provider).
В Yandex Cloud вы можете создать федерацию удостоверений с помощью сервиса Yandex Cloud Organization. Этот сервис работает с любой системой управления учётными записями, которая поддерживает протокол SAML (например Active Directory или Google Workspace).
Упрощённо аутентификация с использованием федерации удостоверений происходит следующим образом.

- Пользователь хочет открыть в браузере консоль управления Yandex Cloud.
- Если пользователь уже проходил аутентификацию и время жизни cookie в его браузере не истекло, то он переходит на главную страницу консоли управления. Если это не так, то консоль отправляет его на сервер поставщика удостоверений для аутентификации.
- Пользователь переходит на страницу аутентификации на сервере поставщика удостоверений и вводит свои логин и пароль.
- Если аутентификация прошла успешно, сервер поставщика удостоверений переадресует пользователя обратно на страницу входа в консоль управления.
- Поставщик удостоверений направляет сервису IAM облака подписанное сообщение (SAML Response) с информацией о том, что пользователь прошел аутентификацию.
После проверки подписи сообщения IAM устанавливает пользователю cookie на поддомен cloud.yandex. Сookie обменивается на IAM-токен, который позволяет пользователю выполнять операции с защищенными ресурсами. Криптографические ключи для контроля целостности cookie хранятся в IAM.
Тип 3. Аутентифицированные пользователи могут выполнять операции с облаком не только под своими пользовательскими аккаунтами, но и через сервисные аккаунты.
Сервисные аккаунты — это специальный тип аккаунтов, которые используются для доступа к ресурсам Yandex Cloud от имени приложений. Также под сервисными аккаунтами могут выполнять операции облачные функции и сервисы, которые запущены в виртуальных машинах.
С помощью сервисного аккаунта нельзя войти в консоль управления Yandex Cloud. Подразумевается, что операции от имени сервисного аккаунта выполняют программы, а не люди.
С помощью сервисного аккаунта другие пользователи могут управлять вашими ресурсами в Yandex Cloud. Учётным записям этих пользователей нужно лишь предоставить права на использование созданного вами сервисного аккаунта.
Для сервисного аккаунта можно создать ключи для аутентификации в Yandex Cloud с помощью API, CLI и других инструментов. Эти ключи будут удалены при удалении сервисного аккаунта. Если сервисный аккаунт привязан к виртуальным машинам или функциям, в которых запускается ваша программа, то его токен доступа будет вызываться из машины или функции, то есть хранить ключи доступа и управлять ими не придётся.
Аутентификацию сервисного аккаунта можно выполнять тремя способами:
-
Авторизованные ключи. Используются для получения IAM-токена с помощью открытого и секретного ключа. Этот способ вы примените в следующей практической работе.
-
API-ключи. Используются в некоторых сервисах для упрощённой аутентификации вместо IAM-токена. Могут пригодиться для работы с сервисами SpeechKit, Vision и Translate.
-
Статические ключи доступа. Необходимы при использовании AWS-совместимых сервисов, например в Object Storage или Message Queue.
- Категория: Cloud Services Engineer
- Просмотров: 915
Клиентские инструменты обеспечения безопасности
Кратко:
- Ответственность за безопасность в облаке разделена между провайдером и пользователем.
- Инструменты для защиты ресурсов и данных в облаке: группы безопасности, NAT, сервисы платформы безопасности, ПО в Marketplace.
- Контроль доступа: сервис IAM для идентификации пользователей и управления доступом к ресурсам.
- Шифрование данных: сервис KMS для создания ключей шифрования и управления ими, сервис Lockbox для защиты секретов.
- Защита передаваемых данных: использование сертификатов с помощью сервиса Certificate Manager.
- Сетевая безопасность: управление входящим и исходящим трафиком с помощью балансировщика нагрузки и групп безопасности.
- Безопасный доступ к облачной инфраструктуре с помощью виртуальных каналов VPN и сервиса Cloud Interconnect.
- Мониторинг доступности ресурсов: сервис Yandex Monitoring.
- Внешнее сканирование безопасности: проведение пентестов по согласованию с Yandex Cloud.
- Marketplace: комплексные системы защиты ресурсов, межсетевые экраны, образы для развёртывания серверов удалённого доступа.
- ПО в Marketplace: оплата по моделям Pay as you go или BYOL.
Клиентские инструменты обеспечения безопасности
Ответственность за безопасную работу в облаке разделяется между провайдером и пользователем. На прошлом уроке мы выяснили, что для безопасности делает облачный провайдер. Теперь давайте рассмотрим, какими инструментами для защиты своих ресурсов и данных в облаке располагает пользователь.
Некоторые из этих инструментов — например, группы безопасности или NAT — доступны при настройке ресурсов. Некоторые представлены в виде отдельных сервисов платформы безопасности. Кроме того, нужное ПО можно найти в Marketplace облака.

В этом уроке мы сделаем краткий обзор имеющихся инструментов. Подробно они будут разбираться в следующих темах.
Контроль доступа
За идентификацию пользователей и контроль доступа к ресурсам отвечает сервис IAM (Identity and Access Management). Сервис даёт возможность настроить права доступа: вы определяете, кто и какие права имеет на конкретный ресурс, а IAM предоставляет к нему доступ в соответствии с назначенными правами.
С помощью IAM вы можете:
- добавлять и удалять пользователей своих ресурсов;
- тонко управлять правами доступа, назначая и отзывая роли;
- создавать сервисные аккаунты — специальные учётные записи, от имени которых программы могут управлять ресурсами в Yandex Cloud;
- получать IAM-токен, необходимый для авторизации в API Yandex Cloud и выполнения операций с ресурсами.
Шифрование данных
Для защиты конфиденциальности и целостности пользовательских данных Yandex Cloud использует их шифрование. При этом возможность использовать криптографическую защиту данных есть и у самого пользователя.
С помощью сервиса KMS (Key Management Service) вы можете:
- создавать ключи шифрования и управлять ими;
- использовать ключи в популярных библиотеках;
- шифровать и расшифровывать данные небольшого объёма;
- организовывать криптографическую защиту больших объёмов данных с использованием схемы envelope encryption.
Сервис Lockbox помогает защитить ваши секреты, то есть любую информацию, которую нужно хранить в тайне. Это могут быть, например, логины и пароли или ключи сервисного аккаунта.
Используйте Lockbox, чтобы обеспечить:
- безопасное хранение и доступ к значениям секретов;
- централизованное хранение секретов в облаке;
- удобное управление жизненным циклом секретов.
Чтобы защищать передаваемые данные с использованием протокола HTTPS, необходимо использовать сертификаты. Управлять жизненным циклом сертификатов — устанавливать их, отслеживать окончание срока действия, формировать запросы на получение новых — можно с помощью сервиса Certificate Manager.
Сетевая безопасность
Важным элементом безопасности является защита виртуальных сетей. Чтобы её обеспечить, нужно управлять входящим и исходящим трафиком, а также трафиком между сетями в облаке.
Для управления входящим трафиком используется балансировщик нагрузки. Он позволяет снизить риски для безопасности, поскольку уменьшает поверхность атаки и ограничивает трафик на виртуальные машины только необходимыми протоколами. Балансировщик может быть интегрирован с сервисом DDoS Protection для защиты от DDoS-атак.
Чтобы управлять исходящим трафиком, рекомендуется предоставлять виртуальным машинам доступ в интернет через NAT (Network Address Translation) — механизм преобразования сетевых адресов, который работает в качестве сетевого шлюза или прокси-сервера.
Контроль над всеми видами трафика обеспечивается группами безопасности. Этот инструмент — фактически набор правил получения и отправки трафика — позволяет управлять доступом виртуальных машин к ресурсам, расположенным в облаке или в интернете.
Безопасный доступ к облачной инфраструктуре можно обеспечить с помощью виртуальных каналов VPN (Virtual Private Network). Для этого на отдельной виртуальной машине настраивают VPN-сервер или используют готовые образы VPN-серверов из Marketplace.
Выделенное сетевое соединение между локальной инфраструктурой и ресурсами в облаке организуют при помощи сервиса Cloud Interconnect. Такое соединение надёжнее, быстрее и безопаснее подключения через интернет.
Мониторинг доступности ресурсов
Одним из принципов информационной безопасности является обеспечение доступности ресурсов. Но только спроектировать систему в соответствии с этим принципом недостаточно. Нужно иметь инструменты, позволяющие контролировать работу ваших ресурсов.
Для этих целей предназначен сервис Yandex Monitoring. О его возможностях подробно рассказывается в курсе «DevOps и автоматизация».
Внешнее сканирование безопасности
Чтобы убедиться в том, что ваша система хорошо защищена, её можно проверить на наличие уязвимостей. Для этого проводят внешний поиск уязвимостей (пентесты).
Внешнее сканирование безопасности может проводиться как самим пользователем, так и привлечённым подрядчиком. В любом случае обязательно делать это по согласованию с Yandex Cloud и в соответствии с правилами организации сканирования.
Для проведения пентеста нужно отправить анкету в службу технической поддержки и получить одобрение этой заявки со стороны службы информационной безопасности.
Marketplace
Необходимые вам инструменты обеспечения безопасности можно найти и в Marketplace. В нём размещено несколько комплексных систем защиты ресурсов, межсетевых экранов, в том числе для веб-приложений (WAF, Web Application Firewall), образы для развёртывания серверов удалённого доступа OpenVPN и IPSec VPN.
ПО в Marketplace в основном платное. Оплата производится по моделям Pay as you go или BYOL. В первом случае тарифицируется только время фактического использования ПО. Во втором вам понадобится приобрести у поставщика ПО собственную лицензию.
Поздравляем! Вы завершили тему «Основы безопасности в облаке». В следующих темах этого курса вы научитесь защищать свои облачные ресурсы на практике.
- Категория: Cloud Services Engineer
- Просмотров: 593
Как Yandex Cloud защищает облачную инфраструктуру и сервисы
Кратко:
- Безопасность облачной инфраструктуры и сервисов требует технических и организационных мер.
- Облачный провайдер выполняет часть мер по обеспечению безопасности.
- Yandex Cloud имеет аттестат соответствия требованиям российского законодательства по защите персональных данных.
- Yandex Cloud выполняет ключевые требования GDPR и имеет сертификаты соответствия стандартам информационной безопасности.
- Разделение ответственности между облачным провайдером и пользователем в случае обработки персональных данных.
- Система управления информационной безопасностью Yandex Cloud соответствует стандартам ISO/IEC 27001, ISO/IEC 27017 и ISO/IEC 27018.
- Yandex Cloud имеет сертификаты соответствия стандартам PCI DSS и ГОСТ Р 57580.1-2017.
- Концепция разделения ответственности между облачным провайдером и пользователем.
Как Yandex Cloud защищает облачную инфраструктуру и сервисы
На предыдущем уроке мы выяснили, что для обеспечения безопасности требуется предпринять целый набор мер: технических и организационных. Хорошая новость заключается в том, что, если вы работаете в облаке, часть этих мер выполняет облачный провайдер.
Возникает вопрос: а насколько можно быть уверенным, что облачный провайдер выполняет эти меры и обеспечивает высокий уровень безопасности своего облака? Чтобы ответить на этот вопрос, нужно посмотреть, какие аттестаты, сертификаты и (или) другие заключения о соответствии он имеет.
Давайте разберемся на примере Yandex Cloud.
Информацию об относящихся к информационной безопасности аттестатах и сертификатах вы найдете в соответствующем разделе сайта Yandex Cloud. В этом разделе вы увидите, что Yandex Cloud имеет аттестат соответствия своей ИСПДн (информационной системы персональных данных) требованиям российского законодательства по защите персональных данных и обеспечивает первый уровень защищенности. То есть пользователи Yandex Cloud могут работать в облаке с персональными данными любой категории.
В заключении о соответствии приведена информация о том, какие меры для обеспечения первого уровня защищенности персональных данных предпринимает Yandex Cloud, а какие понадобится выполнить пользователю. Есть также краткая памятка, содержащая примерный перечень шагов, которые пользователю облака нужно будет сделать на своей стороне.
Здесь важно подчеркнуть: когда вы как оператор размещаете персональные данные в облаке, то вы поручаете облачному провайдеру лишь их обработку. Иными словами, вы не передаёте Yandex Cloud свои функции оператора персональных данных и связанную с этим ответственность. Это четко прописано в договоре: Yandex Cloud обязуется соблюдать конфиденциальность персональных данных, обеспечивать их безопасность при обработке и выполнять все установленные законодательством требования к защите обрабатываемых персональных данных.
Yandex Cloud выполняет ключевые требования GDPR (General Data Protection Regulation):
- предпринимает меры по защите данных;
- поддерживает процессы обработки обращений, связанных с получением, изменением и удалением персональных данных;
- информирует заказчиков в случае возникновения инцидентов.
Такие обязательства, как правило, включены в соглашение об обработке данных.
В этом же разделе вы найдёте информацию об имеющихся у Yandex Cloud сертификатах соответствия стандартам информационной безопасности.
В частности, система управления информационной безопасностью Yandex Cloud прошла аудит и получила сертификаты соответствия стандартам ISO/IEC 27001, ISO/IEC 27017 и ISO/IEC 27018.
Ещё у Yandex Cloud есть сертификаты соответствия стандартам PCI DSS и ГОСТ Р 57580.1-2017. Иными словами, на платформе Yandex Cloud пользователи могут создавать информационные системы или приложения, работающие с данными платежных карт и финансовыми или банковскими операциями. Чтобы узнать, как разделяется ответственность между облаком и пользователем в этих случаях, посмотрите матрицы разделения ответственности при выполнении требований PCI DSS или ГОСТ Р 57580.1-2017.
Важно понимать, что соответствие облачного провайдера и его облака каким-либо требованиям безопасности не означает, что система пользователя соответствует этим требованиям автоматически. Здесь работает концепция разделения ответственности, о которой мы говорили в первом уроке этой темы.
А теперь рассмотрим на примере Yandex Cloud, как облачные провайдеры обеспечивают безопасность системы.
Организационный уровень
В Yandex Cloud внедрена система управления информационной безопасностью (СУИБ), что подтверждается сертификатом соответствия стандарту ISO/IEC 27001.
СУИБ представляет собой набор политик и процедур, которые позволяют обеспечить информационную безопасность и минимизировать риски. В СУИБ включены следующие механизмы.
1. Инвентаризация активов. Это, прежде всего, учет систем, которые обрабатывают данные клиентов. Правила использования информации и активов, которые связаны с обработкой информации, описаны во внутренних документах организации и регулярно объясняются сотрудникам. При увольнении сотрудники возвращают все корпоративные активы, а доступ к системам отзывается автоматически.
2. Контроль доступа. Доступ к помещениям, зонам безопасности, серверным и сетевым ресурсам имеет только авторизованный персонал. У сотрудников есть доступ только к тем ресурсам, которые они должны использовать по должностным обязанностям.
3. Организация физической безопасности. Аппаратные ресурсы Yandex Cloud располагаются в собственных дата-центрах. Доступ в помещения дата-центров контролируется, а все помещения оборудованы системами видеонаблюдения.
4. Управление обновлениями и уязвимостями. Перед запуском в рабочей среде все обновляемые системы тестируются на наличие уязвимостей. За сроками установки обновлений ведется автоматический контроль.
5. Проведение внутренних и внешних аудитов, а также тестов на проникновение для проверки эффективности процессов обеспечения информационной безопасности.
6. Управление инцидентами. Инциденты — это любые события, которые нарушают или снижают качество обслуживания (или могут стать причиной таких нежелательных последствий). Процесс управления инцидентами осуществляет центр операционной безопасности в составе службы информационной безопасности. В случае выявления каких-либо инцидентов пользователям направляются уведомления.
7. Управление персоналом для минимизации рисков, связанных с действиями сотрудников: проверка, обучение по регламентам информационной безопасности и т. д.
8. Система управления непрерывностью бизнеса, которая описывает последовательность действий сотрудников при возможных негативных сценариях. Эта система также предусматривает резервирование для всех критичных компонентов облачной платформы и хранилищ данных, что позволяет восстановить информацию пользователей в случае отказа оборудования.
Технический уровень
Владельцем данных всегда является пользователь облачной платформы. Все данные пользователей хранятся в так называемом слое данных (Storage Layer), который является ключевым элементом облачной платформы.
Чтобы обеспечить конфиденциальность и целостность данных, Yandex Cloud шифрует их на уровне физической инфраструктуры и на уровне Storage Layer.

Криптографическая защита применяется и в некоторых сервисах. Так, например, резервные копии, которые создаются сервисами управляемых баз данных, шифруются перед отправкой в хранилище. Кроме того, все передаваемые пользовательские данные шифруются с использованием протокола TLS.
Доступность данных в Storage Layer обеспечивается путем их размещения в трёх зонах доступности и репликации между зонами.
Чтобы избежать атак на инфраструктуру облака с пользовательских виртуальных машин, применяется механизм изоляции ресурсов.
Критические, с точки зрения безопасности, облачные сервисы изолируются физически: они запускаются на выделенных физических серверах и в изолированных сетях, где пользовательские виртуальные машины не создаются. Для пользовательских машин используется логическая изоляция на уровне гипервизора. Гипервизор — это системное приложение, которое управляет несколькими виртуальными машинами на одной физической машине и отвечает за то, чтобы они работали полностью отдельно друг от друга.
Для обеспечения безопасности Yandex Cloud использует и другие средства и методы защиты, в том числе:
- инструменты контроля выполнения AppArmor и Seccomp, которые формируют среду изоляции и отслеживают работу приложений;
- систему обнаружения вторжений, которая собирает логи с хостов (в том числе логи AppArmor и Seccomp), дополняет их при помощи утилиты osquery и отправляет в систему Security Information and Event Management (SIEM);
- несколько типов межсетевых экранов и пакетных фильтров;
- систему мониторинга и оповещения о подозрительном поведении.
В соответствии с СУИБ всё установленное ПО регулярно проверяется на наличие уязвимостей и обновляется до последних версий. Конфигурации операционных систем описываются кодом и хранятся в репозитории. Все изменения конфигураций перед переносом в продуктивную среду проходят обязательную проверку в тестовых средах.
Администраторы инфраструктуры и разработчики провайдера имеют доступ к продуктивной среде через бастионный хост, который записывает сессию пользователя. Информация из записанных сессий передается в SIEM и регулярно анализируется. Для доступа используются аппаратные ключи, на которых хранятся аутентификационные данные.
Еще один важный для безопасности аспект работы облачного провайдера заключается в том, чтобы предоставить пользователям эффективные инструменты защиты своих систем и данных. О них вы узнаете на следующем уроке.
- Категория: Cloud Services Engineer
- Просмотров: 818