SlideShare a Scribd company logo
1 of 37
Безопасность в Windows Azure



Ефимцева Наталия
Эксперт по стратегическим технологиям
natale@microsoft.com
Кто отвечает за безопасность?

• Дата-центр - Microsoft
• Платформа - Microsoft
• Приложениесистема –вы 

• Часть угроз отслеживается и устраняется
  самой Windows Azure; но безопасность –
  это так же и ответственность
  разработчика
Физическая безопасность




               Free!
Изоляция сетей
• Сетевая инфраструктура Azure состоит трех VLAN:
   – Основной VLAN - объединяет узлы подписчиков без доверия
   – VLAN FC - содержит доверенные узлы FC и вспомогательных систем
   – VLAN устройств – доверенная сеть и другие устройства
     инфраструктуры
Windows Azure Security Guidance
Windows Azure Security Guidance
Безопасность доступа из кода в Windows
Azure
                           Выполнение
                           неуправляемог
                               о кода

                           Запрещено
            Выполнение
                без                        Переменные
           администрати                      среды
           вного доступа
                                           Ограничено




            Доступ к
            файловой                        P/Invoke
             системе
                                           Запрещено
           Ограничено
                            Доступ к
                            реестру

                           Запрещено
Основные вопросы клиентов
 Перемещение данных в          Сложность решения
 облако                          Управление и защита в
    Конфиденциальность и         гибридных сценариях
     приватность данных




 Доверие облачному             Доступность приложения
 провайдеру                    или сервиса через Интернет
    Это даже не вопрос SLA,      Возможность внешней атаки
     безопасности или              на систему
     сертификации
Обеспечение безопасности

Защита канала    Интеграция с    Защита
коммуникаций     back-end (BE)   Интернет-
                 системами       приложений



Использование    Защита
существующих     уязвимых
учетных данных   данных в
в облаке         облаке
Защита канала коммуникаций: сценарий

• Интернет — это механизм транспорта
  между клиентами, облаком, BE системами
• Защита канала пользователь-облако
  – Использование SSL/TLS
• Защита канала локальная
  инфраструктура-облако (сложнее)
  – Подходы и стандарты в процессе
    становления
Защита канала коммуникаций:
виртуальная сеть
Интеграция с back-end (BE) системами:
вопросы
• BE системы обычно не доступны из вне

• BE обычно соединены с другими BE системами или с FE
  системам: Что произойдет, если облачное приложение
  или сервис станет частью процесса взаимодействия

• Топология сети обычно уже сформирована

• BE системы бывают разными (не только Microsoft
  продуктами)
Интеграция с back-end (BE) системами:
сценарий без облака



                              WAN
                              VPN
Интеграция с back-end (BE) системами:
подход
• Новый локальной интеграционный слой на стороне
  клиента
• Обращение к BE системам с помощью стандартных XML
  Web сервисов (SOAP/REST)
• Кастомный сервис маркеров (билетов) Кербероса для
  управления доступом и проверки подлинности
• Обязательно реализация защиты данных в процессе
  передачи
• Управление доступом и проверка подлинности
  (аутентификация, авторизация, аудит) на каждой
  стороны
• Регулярная проверка доступности интернет
  ресурсов, участвующих в интеграции
Интеграция с back-end (BE) системами:
    подход


  Область
безопасности                      WAN
                                  VPN
Интеграция с back-end (BE) системами:
выводы
• Вовлечении облака требует пере смотрения традиционных
  подходов к сетевой безопасности (например, ДМЗ)

• Минимизируйте возможности для атаки (attack surface)

• Не забывайте о IDS/IPS и SIEM утилитах (и процессах) для
  того, чтобы обнаружить и заблокировать подозрительный
  трафик или DDOS атаки на стороне клиента

• Используйте файрвол на уровне веб-приложения (Web
  Application Firewall) для анализа и валидации входящего
  трафика и данных для того, чтобы закрывать подозрительные
  соединения
Защита Интернет-приложений: вопросы

• Не забывайте, что теперь и облачные, и локальные
  компоненты доступны из вне (через Интернет)

• Уровень приложения – это последняя граница
  безопасности
   – Если с приложением что-то не так, то и сервис и данные
     могут быть скомпрометированы

• Windows Azure берет часть задач по обеспечению
  безопасности на себя, но для нас так же остаются задачи
Защита Интернет-приложений: DDOS
атаки
• Неотъемлемая часть Интернет систем
• С Windows Azure в меньшей степени является поводом
  для беспокойства
   – Microsoft имеет защиту ЦОДов на инфраструктурном уровне
     (GFS процессы)
   – Не беспокойтесь о повышении стоимости ресурсов
• Больше внимание следует уделить атакам на локальные
  компоненты
   – Обычно более слабые точки с точки зрения
     инфраструктуры и процессов
   – Потенциально может скопрометировать все решение
DDOS атаки: подход
• Локальный репозиторий в облаке и асинхронная
  передача уменьшить зависимость от локальной системы

• Минимизируйте возможности для атаки (attack surface)
   – Аутентификация для всех входных точек
   – IP-фильтрация: ограничение входящего трафика для
     Windows Azure диапазона
   – Регулярная оценка уязвимостей и проверка кода

• Протоколирование действий и мониторинг всех
  компонентов приложения
Использование существующих учетных
данных в облаке: вопросы
•   Идентификационная информация является одной из самых важных
     – Нет желания переносить эти данные в облако
     – В некоторых случаях есть юридические ограничения


• Требование заказчика: использовать существующие системы
  аутентификации и авторизации и в облаке

•   Не только каталоги Microsoft
     – Novell, Oracle/Sun, IBM

•   Отсутствие поддержки протокола SAML 2.0 (SAML-P) в Windows Azure
     – Только SAML 2.0 формат маркера поддерживается
Использование существующих учетных
данных в облаке: подход
• Идентификационные данных в локальной
  IdM

         .NET бизнес
         приложение
                        Интернет
        Oracle бизнес
        приложение                    Веб-
                                   приложение
         J2EE бизнес
         приложение
Использование существующих учетных
  данных в облаке: пример
                         2. Запрос к ACS                  4. Аутентификация пользователя в SAT IdP


                   З. Перенаправление к SAT
Windows                       Idp
Azure ACS                                          6. Перенаправление                        Novell Access
                                                   обратно кACS                               Manager
            8. ACS              7. Маркер
            валидирует IdP      отправляется ACS
            маркер, создает                                             5. Создается
            ACS маркер                                                  маркер с              Novell Cloud
                   9. Маркер отправляется                               заявками            Security Services
                   приложению

                1. Запрос к приложению,
                перенаправление к ACS                                                      Novell eDirectory
Приложение                                             Проверка подлинности
                                                       осуществляется через                     SAT
                                                       Novell Cloud Security              федерированный
                10. Пользователю разрешен              Service,                               сервис
                доступ
                                                       взаимодействующий с
                                                       Novell eDirectory
Windows Azure Active Directory –
идентификация и управление доступом
Использование существующих учетных
данных в облаке: выводы
• Используйте индустриальный стандарты для федерации
  между облаком и провайдерами учетных данных (IdP)

• Ориентируйтесь на создание приложений, использующих
  утверждения (claim aware)
   – Используйте WIF
   – Разделяйте бизнес-модули и модули AuthNAuthZ

• Используйте Windows Azure ACS как брокер для облачных
  приложений

• Используйте WS-Federation пока ACS не поддерживает SAML-P
Гибридное решение - Пряники
                                                       SQL Azure Data Sync,
                        Windows Azure                  Service Bus
                                                       Sync Framework/WCF
                  Web          Worker       SQL
                                            Azure
               Forms   WIF


                             ADFS Proxy   SharePoint        Пряники
                                                              On-
                                                            premise

                                     Active                  Active
 Web Clients
                                    Directory               Directory
Сервис Пряники – аутентификация
1. User запрашивает страницу SharePoint, на которой есть WebParts, представляющие собой
   обычные iFrame.
2. WebParts пробуют начать загруать содерджимое с Azure
3. в этот момент Azure возвращает Redirect на ADFS или ADFS Proxy для аутентификации
4. Пользователь вводит учетные данные или аутентифицируется автоматически (для зоны Intranet) -
   его вместе с токеном передают обратно в Azure
Плюсы - простая реализация
Минуcы - редирект пользователя, невозмодность закешировать данные на стороне клиента


                                         Azure



           ADFS
           Proxy                4          2
                                                                   SharePoint
                                     3
                                                 1
                                USER                      Pryaniky
           Active
                                                          (iFrame)
          Directory
Сервис Пряники – аутентификация
WСF +ADFS: позволяет аутентифицировать пользователей из домена в облачном сервисе без
активного участия пользователей
1. Пользователь получает страницу SharePoint
2. При генерации страницы вызывается WCF/WIF компонена которая делает запрос к Azure
3. В процессе установки защищенного соединения и аутентификации пользователя на сервисе требуется
   токен, который получается WCF-клиентом от ADFS или ADFS-Proxy
4. В результате после аутентификации клиента WebParts получает необходинмые данные для
   отображения
Данный подход позволяет не только кешировать данные, но и сохранить полученный токен для
аутентификации в последующих запросах
                                                   Azure

                                                   4       2
              ADFS
              Proxy                  3
                                                        WCF с      SharePoint
                                                         WIF
                                 USER          1
             Active                                        Pryaniky
            Directory
Надежность и автомасштабирование
Защита данных в облаке: вопросы
• Облачный провайдер имеет неограниченный
  доступ к хранящимся данным (неизменный
  закон безопасности # 3)

• Как снизить риск злоупотребления данными,
  хранящимися в облаке

• Шифрование данных в процессе передачи и
  хранения
Защита данных в облаке: шифрования

•   На данный момент нет OOB поддержки шифрования для хранилища или базы
    данных

•   Данные хранятся в хранилище в открытом виде

•   SQL Database (SQL Azure) на данный момент не поддерживает Transparent Data
    Encryption

•   На данный момент нет поддержки Data Protection API (DPAPI) для хранения
    секретовключей в хранилище Windows Azure

•   Подходы к шифрованию
     –   Windows Azure Trust Service
     –   Собственные модули шифрования (AES)
Защита данных: выводы
• Размещайте ключи вне облака

• Используйте стандартные алгоритмы шифрования

• Баланс между защитой и накладными расходами
  (шифруйте только то, что действительно требуется
  шифровать)

• Не забудьте о возможных последствия для поиска и
  индексирования
Облако как связующее звено

                                                   SQL
                             Контрольная           Azure
                             панель
                             администратора
                             на Silverlight
 WPF, Win32   Web Role
              MultiTenant    ASP.NET



                                                           Blob
                                                           Store

                            Worker
                             Role
                                       Обработка
                                       данных,
                                       биллинг
Выводы
• Безопасность — это
  общая ответственность
  облачного
  провайдера, разработч
  ика и клиента
• Безопасность
  приложений важно -
  следуйте SDL при
  разработке решения
  (SDL – Security
  Development Life
  Cycle)
Windows Azure в России
 Веб платформа для
 спортивных команд            Пряники – сервис для          Сервис для удаленного
                              нематериальной                                           Wizee Шопинг – мобильный
                                                            управления IT ресурсами
                              мотивации персонала                                      гид по торговым центрам




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



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

                                                                                         Трансляция премии
                                                                                         ―Золотой граммофон‖ онлайн
                                                         Тегирование изображений
                 Онлайн трансляции
Windows Azure в России
                                                                             Инструмент
Платформа создания    Сервис создания и      Облачный сервис для              поиска по
бизнес-приложений    обработки диаграмм      дистрибуции авторского          социальным
                                             контента                           медиа




   ERP в облаке                                 Сервис создания       Новостной сервис на всех
                                                динамического               платформах
                         Портал для малого      видео
                                   бизнеса



                                                                          Социальная сеть
                                                 Видео-                   интересных мест
                                                 трансляции


Универсальный
SaaS для малого
бизнеса
                            Электронный         Облачный хостинг блогов
Windows Azure в России

Система управления и
контроль внутренних           Мониторинг и аналитика
процессов                     брендов                   Рейтинг блогосферы




 Википедия бизнес-контактов
                              Обмен информацией о
                              продуктах и технологиях
Спасибо за внимание!
     Email: natale@microsoft.com
       Twitter: @nefimtseva




  Russia Azure Program
<azurerus@microsoft.com>

More Related Content

More from Natalia Efimtseva

Google Cardboard (Winter Nights'15)
Google Cardboard (Winter Nights'15)Google Cardboard (Winter Nights'15)
Google Cardboard (Winter Nights'15)Natalia Efimtseva
 
Google Cardboard (Winter Nights'15)
Google Cardboard (Winter Nights'15)Google Cardboard (Winter Nights'15)
Google Cardboard (Winter Nights'15)Natalia Efimtseva
 
Нагрузочное тестирование в облаке Windows Azure
Нагрузочное тестирование в облаке Windows AzureНагрузочное тестирование в облаке Windows Azure
Нагрузочное тестирование в облаке Windows AzureNatalia Efimtseva
 
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013Natalia Efimtseva
 
Бесплатный триал Windows Azure: пошаговая инструкция
Бесплатный триал Windows Azure: пошаговая инструкцияБесплатный триал Windows Azure: пошаговая инструкция
Бесплатный триал Windows Azure: пошаговая инструкцияNatalia Efimtseva
 
Облака для Windows 8 (Windows 8 Summit)
Облака для Windows 8 (Windows 8 Summit)Облака для Windows 8 (Windows 8 Summit)
Облака для Windows 8 (Windows 8 Summit)Natalia Efimtseva
 
Миграция существующих приложений в Windows Azure
Миграция существующих приложений в Windows AzureМиграция существующих приложений в Windows Azure
Миграция существующих приложений в Windows AzureNatalia Efimtseva
 
Облачные сервисы для приложений под Windows 8 и Windows Phone
Облачные сервисы для приложений под Windows 8 и Windows PhoneОблачные сервисы для приложений под Windows 8 и Windows Phone
Облачные сервисы для приложений под Windows 8 и Windows PhoneNatalia Efimtseva
 
Инфраструктура как услуга (IaaS) в Windows Azure
Инфраструктура как услуга (IaaS) в Windows AzureИнфраструктура как услуга (IaaS) в Windows Azure
Инфраструктура как услуга (IaaS) в Windows AzureNatalia Efimtseva
 
Возможности интеграции с Office 365
Возможности интеграции с Office 365Возможности интеграции с Office 365
Возможности интеграции с Office 365Natalia Efimtseva
 

More from Natalia Efimtseva (10)

Google Cardboard (Winter Nights'15)
Google Cardboard (Winter Nights'15)Google Cardboard (Winter Nights'15)
Google Cardboard (Winter Nights'15)
 
Google Cardboard (Winter Nights'15)
Google Cardboard (Winter Nights'15)Google Cardboard (Winter Nights'15)
Google Cardboard (Winter Nights'15)
 
Нагрузочное тестирование в облаке Windows Azure
Нагрузочное тестирование в облаке Windows AzureНагрузочное тестирование в облаке Windows Azure
Нагрузочное тестирование в облаке Windows Azure
 
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
 
Бесплатный триал Windows Azure: пошаговая инструкция
Бесплатный триал Windows Azure: пошаговая инструкцияБесплатный триал Windows Azure: пошаговая инструкция
Бесплатный триал Windows Azure: пошаговая инструкция
 
Облака для Windows 8 (Windows 8 Summit)
Облака для Windows 8 (Windows 8 Summit)Облака для Windows 8 (Windows 8 Summit)
Облака для Windows 8 (Windows 8 Summit)
 
Миграция существующих приложений в Windows Azure
Миграция существующих приложений в Windows AzureМиграция существующих приложений в Windows Azure
Миграция существующих приложений в Windows Azure
 
Облачные сервисы для приложений под Windows 8 и Windows Phone
Облачные сервисы для приложений под Windows 8 и Windows PhoneОблачные сервисы для приложений под Windows 8 и Windows Phone
Облачные сервисы для приложений под Windows 8 и Windows Phone
 
Инфраструктура как услуга (IaaS) в Windows Azure
Инфраструктура как услуга (IaaS) в Windows AzureИнфраструктура как услуга (IaaS) в Windows Azure
Инфраструктура как услуга (IaaS) в Windows Azure
 
Возможности интеграции с Office 365
Возможности интеграции с Office 365Возможности интеграции с Office 365
Возможности интеграции с Office 365
 

MSSD 2012 Russia: Безопасность в Windows Azure

  • 1. Безопасность в Windows Azure Ефимцева Наталия Эксперт по стратегическим технологиям natale@microsoft.com
  • 2. Кто отвечает за безопасность? • Дата-центр - Microsoft • Платформа - Microsoft • Приложениесистема –вы  • Часть угроз отслеживается и устраняется самой Windows Azure; но безопасность – это так же и ответственность разработчика
  • 4. Изоляция сетей • Сетевая инфраструктура Azure состоит трех VLAN: – Основной VLAN - объединяет узлы подписчиков без доверия – VLAN FC - содержит доверенные узлы FC и вспомогательных систем – VLAN устройств – доверенная сеть и другие устройства инфраструктуры
  • 7. Безопасность доступа из кода в Windows Azure Выполнение неуправляемог о кода Запрещено Выполнение без Переменные администрати среды вного доступа Ограничено Доступ к файловой P/Invoke системе Запрещено Ограничено Доступ к реестру Запрещено
  • 8. Основные вопросы клиентов Перемещение данных в Сложность решения облако  Управление и защита в  Конфиденциальность и гибридных сценариях приватность данных Доверие облачному Доступность приложения провайдеру или сервиса через Интернет  Это даже не вопрос SLA,  Возможность внешней атаки безопасности или на систему сертификации
  • 9. Обеспечение безопасности Защита канала Интеграция с Защита коммуникаций back-end (BE) Интернет- системами приложений Использование Защита существующих уязвимых учетных данных данных в в облаке облаке
  • 10. Защита канала коммуникаций: сценарий • Интернет — это механизм транспорта между клиентами, облаком, BE системами • Защита канала пользователь-облако – Использование SSL/TLS • Защита канала локальная инфраструктура-облако (сложнее) – Подходы и стандарты в процессе становления
  • 12. Интеграция с back-end (BE) системами: вопросы • BE системы обычно не доступны из вне • BE обычно соединены с другими BE системами или с FE системам: Что произойдет, если облачное приложение или сервис станет частью процесса взаимодействия • Топология сети обычно уже сформирована • BE системы бывают разными (не только Microsoft продуктами)
  • 13. Интеграция с back-end (BE) системами: сценарий без облака WAN VPN
  • 14. Интеграция с back-end (BE) системами: подход • Новый локальной интеграционный слой на стороне клиента • Обращение к BE системам с помощью стандартных XML Web сервисов (SOAP/REST) • Кастомный сервис маркеров (билетов) Кербероса для управления доступом и проверки подлинности • Обязательно реализация защиты данных в процессе передачи • Управление доступом и проверка подлинности (аутентификация, авторизация, аудит) на каждой стороны • Регулярная проверка доступности интернет ресурсов, участвующих в интеграции
  • 15. Интеграция с back-end (BE) системами: подход Область безопасности WAN VPN
  • 16. Интеграция с back-end (BE) системами: выводы • Вовлечении облака требует пере смотрения традиционных подходов к сетевой безопасности (например, ДМЗ) • Минимизируйте возможности для атаки (attack surface) • Не забывайте о IDS/IPS и SIEM утилитах (и процессах) для того, чтобы обнаружить и заблокировать подозрительный трафик или DDOS атаки на стороне клиента • Используйте файрвол на уровне веб-приложения (Web Application Firewall) для анализа и валидации входящего трафика и данных для того, чтобы закрывать подозрительные соединения
  • 17. Защита Интернет-приложений: вопросы • Не забывайте, что теперь и облачные, и локальные компоненты доступны из вне (через Интернет) • Уровень приложения – это последняя граница безопасности – Если с приложением что-то не так, то и сервис и данные могут быть скомпрометированы • Windows Azure берет часть задач по обеспечению безопасности на себя, но для нас так же остаются задачи
  • 18. Защита Интернет-приложений: DDOS атаки • Неотъемлемая часть Интернет систем • С Windows Azure в меньшей степени является поводом для беспокойства – Microsoft имеет защиту ЦОДов на инфраструктурном уровне (GFS процессы) – Не беспокойтесь о повышении стоимости ресурсов • Больше внимание следует уделить атакам на локальные компоненты – Обычно более слабые точки с точки зрения инфраструктуры и процессов – Потенциально может скопрометировать все решение
  • 19. DDOS атаки: подход • Локальный репозиторий в облаке и асинхронная передача уменьшить зависимость от локальной системы • Минимизируйте возможности для атаки (attack surface) – Аутентификация для всех входных точек – IP-фильтрация: ограничение входящего трафика для Windows Azure диапазона – Регулярная оценка уязвимостей и проверка кода • Протоколирование действий и мониторинг всех компонентов приложения
  • 20. Использование существующих учетных данных в облаке: вопросы • Идентификационная информация является одной из самых важных – Нет желания переносить эти данные в облако – В некоторых случаях есть юридические ограничения • Требование заказчика: использовать существующие системы аутентификации и авторизации и в облаке • Не только каталоги Microsoft – Novell, Oracle/Sun, IBM • Отсутствие поддержки протокола SAML 2.0 (SAML-P) в Windows Azure – Только SAML 2.0 формат маркера поддерживается
  • 21. Использование существующих учетных данных в облаке: подход • Идентификационные данных в локальной IdM .NET бизнес приложение Интернет Oracle бизнес приложение Веб- приложение J2EE бизнес приложение
  • 22. Использование существующих учетных данных в облаке: пример 2. Запрос к ACS 4. Аутентификация пользователя в SAT IdP З. Перенаправление к SAT Windows Idp Azure ACS 6. Перенаправление Novell Access обратно кACS Manager 8. ACS 7. Маркер валидирует IdP отправляется ACS маркер, создает 5. Создается ACS маркер маркер с Novell Cloud 9. Маркер отправляется заявками Security Services приложению 1. Запрос к приложению, перенаправление к ACS Novell eDirectory Приложение Проверка подлинности осуществляется через SAT Novell Cloud Security федерированный 10. Пользователю разрешен Service, сервис доступ взаимодействующий с Novell eDirectory
  • 23. Windows Azure Active Directory – идентификация и управление доступом
  • 24. Использование существующих учетных данных в облаке: выводы • Используйте индустриальный стандарты для федерации между облаком и провайдерами учетных данных (IdP) • Ориентируйтесь на создание приложений, использующих утверждения (claim aware) – Используйте WIF – Разделяйте бизнес-модули и модули AuthNAuthZ • Используйте Windows Azure ACS как брокер для облачных приложений • Используйте WS-Federation пока ACS не поддерживает SAML-P
  • 25. Гибридное решение - Пряники SQL Azure Data Sync, Windows Azure Service Bus Sync Framework/WCF Web Worker SQL Azure Forms WIF ADFS Proxy SharePoint Пряники On- premise Active Active Web Clients Directory Directory
  • 26. Сервис Пряники – аутентификация 1. User запрашивает страницу SharePoint, на которой есть WebParts, представляющие собой обычные iFrame. 2. WebParts пробуют начать загруать содерджимое с Azure 3. в этот момент Azure возвращает Redirect на ADFS или ADFS Proxy для аутентификации 4. Пользователь вводит учетные данные или аутентифицируется автоматически (для зоны Intranet) - его вместе с токеном передают обратно в Azure Плюсы - простая реализация Минуcы - редирект пользователя, невозмодность закешировать данные на стороне клиента Azure ADFS Proxy 4 2 SharePoint 3 1 USER Pryaniky Active (iFrame) Directory
  • 27. Сервис Пряники – аутентификация WСF +ADFS: позволяет аутентифицировать пользователей из домена в облачном сервисе без активного участия пользователей 1. Пользователь получает страницу SharePoint 2. При генерации страницы вызывается WCF/WIF компонена которая делает запрос к Azure 3. В процессе установки защищенного соединения и аутентификации пользователя на сервисе требуется токен, который получается WCF-клиентом от ADFS или ADFS-Proxy 4. В результате после аутентификации клиента WebParts получает необходинмые данные для отображения Данный подход позволяет не только кешировать данные, но и сохранить полученный токен для аутентификации в последующих запросах Azure 4 2 ADFS Proxy 3 WCF с SharePoint WIF USER 1 Active Pryaniky Directory
  • 29. Защита данных в облаке: вопросы • Облачный провайдер имеет неограниченный доступ к хранящимся данным (неизменный закон безопасности # 3) • Как снизить риск злоупотребления данными, хранящимися в облаке • Шифрование данных в процессе передачи и хранения
  • 30. Защита данных в облаке: шифрования • На данный момент нет OOB поддержки шифрования для хранилища или базы данных • Данные хранятся в хранилище в открытом виде • SQL Database (SQL Azure) на данный момент не поддерживает Transparent Data Encryption • На данный момент нет поддержки Data Protection API (DPAPI) для хранения секретовключей в хранилище Windows Azure • Подходы к шифрованию – Windows Azure Trust Service – Собственные модули шифрования (AES)
  • 31. Защита данных: выводы • Размещайте ключи вне облака • Используйте стандартные алгоритмы шифрования • Баланс между защитой и накладными расходами (шифруйте только то, что действительно требуется шифровать) • Не забудьте о возможных последствия для поиска и индексирования
  • 32. Облако как связующее звено SQL Контрольная Azure панель администратора на Silverlight WPF, Win32 Web Role MultiTenant ASP.NET Blob Store Worker Role Обработка данных, биллинг
  • 33. Выводы • Безопасность — это общая ответственность облачного провайдера, разработч ика и клиента • Безопасность приложений важно - следуйте SDL при разработке решения (SDL – Security Development Life Cycle)
  • 34. Windows Azure в России Веб платформа для спортивных команд Пряники – сервис для Сервис для удаленного нематериальной Wizee Шопинг – мобильный управления IT ресурсами мотивации персонала гид по торговым центрам Инструмент для выбора надежного партнера по Облачный сервис по Всероссийская извлечению данных Облачный сервис для разработке веб-сайтов школьная организации и образовательная сеть проведения онлайн мероприятий Сервис для поиска работы Управление процессом подбора персонала Сервис для путешественников Трансляция премии ―Золотой граммофон‖ онлайн Тегирование изображений Онлайн трансляции
  • 35. Windows Azure в России Инструмент Платформа создания Сервис создания и Облачный сервис для поиска по бизнес-приложений обработки диаграмм дистрибуции авторского социальным контента медиа ERP в облаке Сервис создания Новостной сервис на всех динамического платформах Портал для малого видео бизнеса Социальная сеть Видео- интересных мест трансляции Универсальный SaaS для малого бизнеса Электронный Облачный хостинг блогов
  • 36. Windows Azure в России Система управления и контроль внутренних Мониторинг и аналитика процессов брендов Рейтинг блогосферы Википедия бизнес-контактов Обмен информацией о продуктах и технологиях
  • 37. Спасибо за внимание! Email: natale@microsoft.com Twitter: @nefimtseva Russia Azure Program <azurerus@microsoft.com>

Editor's Notes

  1. Windows Azure = PaaS + IaaS.IaaS – возможность размещать виртуальные машины в облаке Microsoft, т.е. передать часть функций по инфраструктуре Microsoft (серверные, каналы связи и т.п.)PaaS – это еще один слой абстрагирования.Особенностью Windows Azure как модели PaaS является разделение приложения и инфраструктуры: разработчику достаточно лишь определить необходимый для работы приложения объем ресурсов, а все действия по предоставлению запрашиваемых ресурсов, управлению ими, динамическому распределению, мониторингу, масштабированию выполняются автоматически платформой Windows Azure.Windows Azure как PaaSобеспечит не только базовые функции операционной системы, но и дополнительные: выделение ресурсов по требования для неограниченного масштабирования, автоматическую синхронную репликацию данных для повышения отказоустойчивости, обработку отказов инфраструктуры для обеспечения постоянной доступности и многое другое.Помимо этого Windows Azure предоставляет набор сервисов, которые могут быть использованы как в PaaS, так и в IaaS: кэширование, виртуальные сети, хранилища данных (BLOB) и т.п.[Демо]
  2. Больший упор сделаем на обсуждение безопасности в гибридных сценария
  3. Коммуникации внутри ЦОДСетевая безопасность Azure была спроектирована не только для защиты инфраструктуры от атак извне, но также изнутри.Брандмауэр корневой ВМ обеспечивает невозможность подмены IP-адреса внутри ЦОД.Внутренние IP-адреса являются доверенными, так что нет необходимости использовать IPsec между узламивнутри ЦОД.Гипервизор отвечает за разграничение сетевых ресурсов между ВМ и предотвращает DOS-атакиТрафик Windows Azure проходит через несколько брандмауэров. Некоторые из них могут быть сконфигурированы владельцем сервиса, некоторые управляются фабрикой.Брандмауэр гостевой VMБрандмауэр хост-VMБрандмауэр SQL AzureЛокальные БрандмауэрыФильтрация пакетовТрафик проходит через брандмауэры гостевыхВМи корневые брандмауэры.Весь доступ к диску фильтруется «корневой» виртуальной машиной.Роль Azure содержит хранилище сертификатов X.509, которые загружаются в хранилище сертификатов ВМ.Сертификаты ролей используются для:SSL-каналовОбмена симметричными ключамиЦифровых подписей
  4. https://www.windowsazure.com/en-us/develop/net/best-practices/security/?redirectToLocale=false
  5. Clients &lt;-&gt; Web and worker rolesClients &lt;-&gt; Storage endpointsWeb roles &lt;-&gt; web and worker roles over internal endpointsWeb and worker roles &lt;-&gt; Storage endpointsThe developer registers x.509 certificates in the portal.Certificates deployed to roles are used to establish SSL channels with the client.Certificates deployed to the subscription are used to authenticate tools that use the Windows Azure management API. The SSL channel used for management has mutual authentication. Both the customer and Windows Azure must authenticate each other using the other’s party certificate.Зачем используется SSLКлиент – РольБизнес-активности могут содержать секретные данные.Предотвращает атаки &quot;ManInTheMiddle&quot;АдминистрированиеWindows Azure и разработчик выполняют взаимную аутентификацию. Обеспечивает администрирование вне портала.
  6. Модель безопасности бинарных объектов
  7. Позволяет получить доступ к закрытым бинарным объектам без ключа доступа.Создается специальный URL для передачи пользователям, которым предоставляется доступДетализация разрешенийДоступ на определенный период времениУказание операций, которые может выполнять пользователь с бинарным объектом
  8. Microsoft Codename &quot;SQL Azure Security Services« - http://www.microsoft.com/en-us/sqlazurelabs/labs/sqlazuresecurityservices.aspx
  9. Когда Заказчик рассматривает облако, то помимо явных преимуществ (time to market, отказоустойчивость, масштабируемость и т.п.) возникают некоторые другие вопросы – чаще всего это вопросы о безопасности.На слайде представлены 4 основных вопроса, которые могут возникать.Может ли Windows Azure и облачных провайдердействительно защитить данные. Клиенты хотят быть уверенными, что не произойдет утечка данных.Второй вопрос (сложность решения) возникает в случае, если требуется гибридный сценарий. Например, интеграция с локальными приложениями или портальными решениями. Здесь подразумевается вопрос единой системы или процесса обеспечения безопасности (как для локальных компонентов, так и для облачных). Часто это так же common подход по безопасности для различных платформ, продуктов и вендоров. Локально могут располагаться: каталог учетных данных, хранилище данных (datawarehouse). Компоненты находятся не только локально, но и в облаке, эти компоненты должны обращаться к локальным системам, доступа к которым обычно нет из вне.И последнее: доверие Microsoft как провайдеру.Moving data to the cloudConcerns about data confidentiality and privacyComplexity of the solutionProtecting and managing a solution with components on premises and in the cloudTrust in the cloud providerNot a matter of SLA’s, security standards or certifications.Exposing core services to the InternetIncreasing the risk exposure of the existing systems
  10. Здесь представлены основные вопроса, которые необходимо преодолеть\\очертить при создании облачного приложения или сервиса. И далее я расскажу, каким образом это решается в Windows Azure.Каким образом защищается канал коммуникаций, т.к. в гибридном сценарии у нас возникает «посредник» Интернет между облачной частью системы и локальной.Каким образом можно надежно выполнить интеграцию с BE системами.Каким образом защищать решение, которое будет доступно из интернета практически любому желающему.Каким образом можно использовать имеющиеся системы управления доступом для приложений и сервисов, развернутых в облаке.Каким образом мы можем обеспечить шифрование важных данных.--------Protecting data over the InternetEnabling connectivity to back-end systems Securing Internet-facing applicationsUsing existing identities in the cloudProtecting sensitive data in the cloud
  11. Решение гибридно, это означает, что в процессе коммуникаций появляется посредник – Интернет. Поэтому необходимо защитить два основных канала\\способа взаимодействия:пользователь-облакооблако-локальная инфраструктура.Первое (пользователь-облако) – это хорошо известная схема. Способ решения – это SSL канал, любой браузер может создавать такое защищенное соединение.Второе – более сложное. Любое изменение в системе (дополнительные компоненты или открытые порты) рассматриваются безопасностью как дополнительная зона риска. Поэтому нам нужно решение, которое может этот риск свести к минимому.Better virtual networking in the Windows Azure Roadmap, however current feature set not suitable for our scenarioMore about that in a minutePrivate links or site-to-site VPNs are not an option todayIn the end no other choice other to implement communications between Cloud and on-premises at application level---------------------------------------------------------Internet is the transport mechanism between clients, cloud and on-premises back-endProtecting client-to-Cloud communications a more well known problemUse of SSL/TLS for server authentication and data protectionProtecting Cloud-to-premises communications a much more challenging issueNo established approach and technology yetIntroducing changes and increasing exposure to critical back-end systems one of the first risks identified in the solution
  12. Better virtual networking in the Windows Azure Roadmap, however current feature set not suitable for our scenarioMore about that in a minutePrivate links or site-to-site VPNs are not an option todayIn the end no other choice other to implement communications between Cloud and on-premises at application level
  13. Для создания безопасного канала коммуникаций между Windows Azure и локальной системой может использоваться специальный сервис Windows Azure – виртуальная сеть.С помощью виртуальной сети вы можете создавать традиционные VPN-сети для безопасного масштабирования емкости центра обработки данных. Виртуальная сеть использует стандартный сквозной протокол IPSEC для установки защищенного подключения между корпоративным VPN-шлюзом и Windows Azure.ADв Windows Azure или вне Windows Azure (репликация)DNS в Windows Azure или вне Windows Azure (репликация)
  14. Обычно заказчики не просто соглашаются открыть канал для взаимодействия с BE системами из облака. Это касается не только хранилищ данных, но и систем хранящих учетные данные.Один из вариантов – это создать специальные интеграционные сервис на стороне заказчика.BE’s are usually not connected to the external worldBE’s connects to other BE or FE applications – What happen when the cloud becomes part of an application process?Network topologies are already in placeIn our case, BE’s are all kind of technologies but Microsoft
  15. Пример может быть таким. На слайде вы видите 4 зоны безопасности, которые созданы на стороне заказчика, фактически наиболее традиционна модель. Приложения и системы находятся в корпоративной сети, к которой не подразумевается прямой коннект из облака.Typical (Non-Cloud Ready) Scenario
  16. Создали новый интеграционный слой, который принимает, например, веб-запросы и для аутентификации используется билет кербероса.При этом необходим позаботиться о безопасности передаваемых данных.A new local integration layer at the customer sideConnect to back-end systems using standards-based XML Web services (SOAP/REST)A custom kerberos token service for access controlWe ensure confidentiality and integrity of data-in-transit end to endWe ensure proper access control (authorization, authentication, and auditing) on both sidesWe ensure the availability of the internet facing resources
  17. Может потребоваться внести изменения в архитектуру, чтобы создать зону безопасности.
  18. Когда применяется облако необходимо немного иначе взглянуть на безопасность. В Windows Azure есть веб-роли, воркер-роли, но нет такого понятия как зоны безопасности, fault\\upgrade domain.Все равно надо использовать традиционные способы обнаружение атак и вторжений.Например, если токен неправильного формата – то сразу прерываем соединение.A web application firewall (WAF) is an appliance, server plugin, or filter that applies a set of rules to an HTTP conversationCloud computing requires rethinking the traditional network security zones, such as DMZsReduce attack surface!Invest in IDS/IPS and SIEM tools (and processes!) in order to detect and prevent malicious traffic or DOS attacks at the customer side.Consider using a Web Application Firewall to inspect and validate incoming traffic in order to drop malicious connections
  19. Многие функции и сервисы реализуются на уровне приложений и получается, что они теперь открыты через Интернет. Возникает вопрос их защиты. Для традиционной архитектуры и инфраструктуры наиболее привычный метод защиты – файрволы, сегментация сети. Для облака не все так просто, в облаке очень важно, чтобы приложение было написано корректно. Если что-то не так с приложение, данные так же могут быть скомпрометированы.---------Refers to both the Cloud as well as the on-premises components now exposed to the InternetThe application is the last frontier for security prevention.Once it is broken, the service and the data could be compromised.When an application is moved to the cloud we can not rest in the security capabilities of the Windows Azure platform
  20. DDOS атаки – это вопрос, который возникает практически всегда. Если у нас гибридная система, то большее беспокойство вызывает даже не атаки на облачную часть системы, а на опубликованную во вне часть локальной инфраструктуры. И очень часто это как раз и есть наиболее слабое звено. Особенно, если это не ИТ организация, то фокус на защиту для таких организаций не всегда является основным. Как раз рекомендуем ориентироваться на то, что если и будут атаки, то скорее на локальную часть системы.---Inherent risk in any Internet-facing systemLess of a concern for Windows Azure componentsMicrosoft robust infrastructure, GFS operations Not worried about billing costsBiggest concern is an attack against on-premises componentsWeakest point in terms of infrastructure and operationsCould potentially disrupt the entire solution
  21. Что же можно сделать? Рассматривать локальный сервис в гибридной архитектуре как потенциально не доступный в любой момент времени -&gt; применять локальный репозиторий, из которого данные асинхронно уже будут передавать в систему локальную. Если нет связи с локальной точкой, то по крайней мере пользователи ничего не должны заменить, например, данные которые они передают должны быть приняты вашей облачной стороной.Второй вопрос – это уменьшения площади для атаки. Для любой службы доступной через интернет не должно быть никакого анонимного доступа, только аутентифицированного (WCF сервис httpgetenable=false), даже для получения метаданных. А так же IP фильтрация по IP адресам только Windows Azure. Инфраструктура Microsoft сразу отклонить соединение. Код ревью так же играет не маловажную роль.И, конечно, аудит и анализ этих данных – это важная часть. Например, с помощью SCOM.Меняйте ключи, обновляйте сертификаты------------Local repository in the cloud and asynchronous transfer to on-premises systems reduce dependency on on-premises systemsReduction of attack surfaceAuthentication required in all entry pointsIP Filtering restricting incoming traffic to Windows Azure rangesVulnerability assessment and security code reviewLogging and monitoring of all application components
  22. Меняйте ключи, обновляйте сертификатыToken signing certificates. Renew token signing certificates periodically to avoid denial of service. Windows Azure AD Access Control signs all security tokens it issues. X.509 certificates are used for signing when you build an application that consumes SAML tokens issued by ACS. When signing certificates expire you will receive errors when trying to request a token.Token signing keys. Renew token signing keys periodically to avoid denial of service. Windows Azure AD Access Control signs all security tokens it issues. 256-bit symmetric signing keys are used when you build an application that consumes SWT tokens issued by ACS. When signing keys expire you will receive errors when trying to request a token.WIF - cookieHandlerrequireSsl=“true”. Specifies whether session cookies transferred over the SSL protocol.http://www.windowsazure.com/en-us/develop/net/best-practices/security/?redirectToLocale=falsecookieHandlerrequireSsl=“true”. Specifies whether session cookies transferred over the SSL protocol.--------------Adopt a “security by design” approachEnsure the correct implementation of service interfaces and protocols Use mutual authentication on all communications over the InternetMove the authentication and authorization logic, from the application to an independent block.Audit and monitor the your service
  23. Дневник.Ру---------Identity information is one of the most valuable assets of a customerNot willing to move this data to the cloudIn some cases not legally able to do soCustomer requirement of using existing identity repository (on premises) for cloud authentication and authorizationIdentity repositories not using Microsoft technologyNovell, Oracle/Sun, IBM, strong players in this marketLack of support of the SAML 2.0 protocol (SAML-P) in Windows AzureOnly SAML 2.0 token format currently support
  24. Реопизторий учетных данных располагается на стороне клиента (с IaaS можно синхронизировать с облачным). Вопрос: как использовать локальный IdP? Чтобы дать доступ пользователям.
  25. ПряникиИногда требования бывают интересными: Заказчик не хочет, чтобы учетные данные хранились даже во временном хранилище (области). Мы имеем дело только с маркером. Облако только получает токен, которому может доверять.При таком подходе пользователь никогда даже не пересылает учетные данные облаку.ACS – брокер, который общается с локальным IdP.Используем WIF в приложение, чтобы иметь возможность работать с заявками.1. User connects to App, redirected to ACS2. User connects to ACS3. User redirected to the SAT IdP4. User authenticates to SAT IdP5. Token with claims generated for user6. User redirected back to ACS7. User sends token to ACS8. ACS validates IdP token, generates ACS token 9. User redirected to Azure Service10. Send token to service11. Access granted to the userAuthentication is managed from the Novell Cloud Security Service through the Novell eDirectory
  26. С появлением IaaS для учетных данных еще есть новая возможность: разместить AD а облаке, который синхронизируется с локальным AD.-------------------------------------------------Windows Azure Active Directory is a modern cloud service providing identity management and access control capabilities to cloud applications, whether those are Windows Azure applications, Microsoft Office 365, Dynamics CRM Online, Windows Intune or other 3rd party cloud services. Combines the proven enterprise capabilities of Active Directory with the scale and elasticity of Windows Azure, so you can bring your applications to the cloud easily. Windows Azure Active Directory provides an identity provider, access control, easy integration with your on-premises AD deployments, and full support of third party identity providers.Benefits of the Windows Azure Active Directory include:Single sign-on across your cloud applications: Windows Azure Active Directory (AD) gives end users a seamless single sign-on experience for Microsoft and third party cloud services as well as applications built on Azure.Simple integration with your on-premises Active Directory: You can quickly extend your existing on-premises Active Directory to apply policy and control and authenticate users with their existing accounts to Windows Azure and other cloud services. Easily create and manage identities in the Cloud : For organizations that don’t require an on-premise AD deployment, Windows Azure Active Directory provides an easy way to create and manage identities in the Cloud.Build social enterprise apps: Windows Azure Active Directory provides an enterprise social graph for applications to discover information and relationships between identities easily so that developers and ISVs can build a richer end user experience. Flexibility to use your development tools and social identities : With Windows Azure Active Directory, you can use .NET, PHP, Java and Node.js and get out-of-the-box support for popular web identity providers including Windows Live ID, Google, Yahoo!, and Facebook.
  27. Используйте федерацию, где это возможно. С тем, чтобы это использовать необходимо создавать приложения, использующие утверждения. В этом может помочь WIF.Необходимо разделять бизнес-логику приложения и AuthZ\\N и перемещать эту логик в ACS.И последнее, Windows Azure поддерживает SAML в виде формата маркера, но не как протокол на данный момент. Поэтому можно использовать WS-Federation протокол.------------Use the industry-standard approach of federation between the Cloud and identity providers (IdPs)Develop claims-aware applications using Windows Identity Foundation, decoupling AuthN and AuthZ from business logicUse Windows Azure AppFabric ACS as the identity broker for the cloud applicationsRely on WS-Federation as ACS does not support SAML-P (yet)
  28. Пряники – гибридное решение, настроена ADFS иACS.
  29. Социальная сеть – гибридное решение: ресурсоемкие операции в облаке, персональные данные локально.
  30. И последний, но не по значимости вопрос – как защищать данные, которые хранятся в облаке. Очевидный ответ – шифрование данных.-------------Cloud Service Provider has unrestricted access to data at rest (Immutable Law of Security #3)Once the customer have data stored in Windows Azure (Blob, Table, or SQL Azure), how does the customer mitigates the risk of abuse of that dataEncryption of data-at-rest when it is in a public cloud becomes a hot topic vs when the customer has data located in its own datacenter
  31. В Windows Azure на данный момент нет OOB поддержки шифрования. Данные хранятся в открытом виде.-------------Today there is no native support for encryption in either Windows Azure Storage (Blob or Tables) or SQL Azure. Data in Windows Azure Storage is stored in clearSQL Azure does not currently support the Transparent Data Encryption (TDE) feature available in Microsoft SQL Server.Currently there is no support for Data Protection API (DPAPI)-like persistence of secret data in Windows Azure Storage. There is no option to encrypt the data other than developing your own encryption codeШифрование данных возможно только в вашем кодеПриложения должны предоставлять соответствующий ключ для дешифрации данных
  32. Шифрование с помощью сертификата, ключ которого хранится на стороне клиента в защищенном хранилище.Данные шифруются (симметричным ключом), далее ключ шифруется публичном ключом заказчика. Данные сохраняются в хранилище Windows Azure.Для дешифрования получает сессионных ключ шифрования. Который будет декриптованпрайват ключом.
  33. На данный момент шифрование можно осуществлять только на уровне приложения. Соответственно ключ должен хранится даже не в облаке. Для большей безопасности – криптованиеможно даже--------------------Keep your keys outside the cloudUse standard encryption algorithmsBalance between protection and processing overhead required (only encrypt what you need to encrypt!)Consider potential implications for search and indexing
  34. АналогIntune – через облако передаются команды на управления серверами.
  35. Продукты Microsoft разработаны в соответствии c процессом SDLНормативный и практичный подходПроактивный– не только поиск уязвимостейУстранение проблем безопасности на ранних этапахПредсказуемый результатРазрабатывайте ваши приложения с SDL и защищайте ваших клиентовСнижайте количество уязвимостейСнижайте влияние уязвимостей