Шаблоны проектирования облака, поддерживающие безопасность

При проектировании архитектур рабочих нагрузок следует использовать отраслевые шаблоны, которые решают распространенные проблемы. Шаблоны могут помочь вам сделать преднамеренный компромисс в рабочих нагрузках и оптимизировать для желаемого результата. Они также могут помочь снизить риски, связанные с конкретными проблемами, которые могут повлиять на надежность, производительность, затраты и операции. Эти риски могут свидетельствовать об отсутствии гарантий безопасности, если оставить их без присмотра, могут представлять значительные риски для бизнеса. Эти шаблоны поддерживаются реальными возможностями, предназначены для облачных и операционных моделей и по своей сути не зависят от поставщиков. Использование хорошо известных шаблонов в качестве способа стандартизации структуры рабочей нагрузки является компонентом операционной эффективности.

Многие конструктивные шаблоны напрямую поддерживают один или несколько основных принципов архитектуры. Шаблоны проектирования, поддерживающие компонент безопасности, определяют приоритеты таких концепций, как сегментация и изоляция, строгой авторизация, единая безопасность приложений и современные протоколы.

Конструктивные шаблоны для обеспечения безопасности

В следующей таблице перечислены шаблоны проектирования облака, которые поддерживают цели безопасности.

Модель Сводка
Посредник Инкапсулирует сетевые подключения и управляет ими, разгружая сквозные задачи, связанные с сетевым взаимодействием. Полученные вспомогательные службы инициируют обмен данными от имени клиента. Эта точка-посредник предоставляет возможность для повышения безопасности сетевых подключений.
Отдельные серверные части для каждого интерфейса Индивидуализирует уровень служб рабочей нагрузки, создавая отдельные службы, которые являются эксклюзивными для определенного интерфейсного интерфейса. Из-за этого разделения безопасность и авторизация на уровне служб, поддерживающем один клиент, можно адаптировать к функциональным возможностям, предоставляемым этим клиентом, что может привести к сокращению контактной зоны API и боковому смещению между разными внутренними серверами, которые могут предоставлять различные возможности.
Распределительный блок Вводит преднамеренные и полные сегментации между компонентами для изоляции радиуса взрыва неисправностей. Эту стратегию также можно использовать для сдерживания инцидентов безопасности на скомпрометированную переборку.
Проверка утверждений Отделяет данные от потока обмена сообщениями, предоставляя способ отдельно получить данные, связанные с сообщением. Этот шаблон поддерживает хранение конфиденциальных данных вне текста сообщений, а не управление ими в защищенном хранилище данных. Эта конфигурация позволяет установить более строгую авторизацию для поддержки доступа к конфиденциальным данным из служб, которые должны использовать данные, но удалить видимость из вспомогательных служб, таких как решения для мониторинга очередей.
Федеративная идентификация Делегирует доверие поставщику удостоверений, который является внешним для рабочей нагрузки для управления пользователями и обеспечения проверки подлинности для приложения. Внедрив управление пользователями и проверку подлинности, вы можете получить расширенные возможности для обнаружения и предотвращения угроз на основе удостоверений без необходимости реализовывать эти возможности в рабочей нагрузке. Внешние поставщики удостоверений используют современные совместимые протоколы проверки подлинности.
Привратник Разгружает обработку запросов, предназначенную специально для обеспечения безопасности и контроля доступа до и после перенаправления запроса на внутренний узел. Добавление шлюза в поток запросов позволяет централизовать функции безопасности, такие как брандмауэры веб-приложений, защита от атак DDoS, обнаружение ботов, обработка запросов, запуск проверки подлинности и проверки авторизации.
Агрегирование на шлюзе Упрощает взаимодействие клиента с рабочей нагрузкой, агрегируя вызовы нескольких внутренних служб в одном запросе. Эта топология часто сокращает количество точек касания, имеющихся у клиента в системе, что сокращает общедоступную контактную зону и точки проверки подлинности. Агрегированные серверные части могут оставаться полностью изолированными от клиентов.
Перенесение в шлюз Разгружает обработку запросов на устройство шлюза до и после перенаправления запроса на внутренний узел. Добавление шлюза в поток запросов позволяет централизовать функции безопасности, такие как брандмауэры веб-приложений и TLS-подключения с клиентами. Все разгруженные функции, предоставляемые платформой, уже обеспечивают повышенную безопасность.
Издатель/Подписчик Отделяет компоненты в архитектуре, заменяя прямое взаимодействие между клиентом и службой обменом данными через промежуточный брокер сообщений или шину событий. Эта замена вводит важную границу сегментации безопасности, которая позволяет подписчикам очереди быть изолированы от издателя по сети.
Карантин Обеспечивает соответствие внешних ресурсов согласованному командой уровню качества, прежде чем получать разрешение на их использование в рабочей нагрузке. Этот проверка служит первой проверкой безопасности внешних артефактов. Проверка артефакта проводится в сегментированной среде перед его использованием в рамках жизненного цикла безопасной разработки (SDL).
Расширение Расширяет функциональные возможности приложения, инкапсулируя нестандартные или сквозные задачи в сопутствующий процесс, который существует вместе с приложением main. Инкапсулировав эти задачи и развернув их вне процесса, можно уменьшить контактную зону конфиденциальных процессов до только кода, необходимого для выполнения задачи. Вы также можете использовать расширения для добавления сквозных элементов управления безопасностью в компонент приложения, который изначально не разработан с этой функциональностью.
Регулирование Накладывает ограничения на скорость или пропускную способность входящих запросов к ресурсу или компоненту. Вы можете разработать ограничения, чтобы предотвратить исчерпание ресурсов, которое может быть вызвано автоматическим злоупотреблением системой.
Ключ камердинера Предоставляет ограниченный доступ к ресурсу, не используя промежуточный ресурс для прокси-сервера доступа. Этот шаблон позволяет клиенту напрямую обращаться к ресурсу, не требуя долгосрочных или постоянных учетных данных. Все запросы на доступ начинаются с проверяемой транзакции. Предоставленный доступ ограничивается как по область, так и по длительности. Этот шаблон также упрощает отмену предоставленного доступа.

Дальнейшие действия

Ознакомьтесь с шаблонами проектирования облака, которые поддерживают другие основные аспекты Azure Well-Architected Framework: