Windows Azure Security and Diagnostics

29
День 3. Безопасность и диагностика Фещенко Александр Windows Azure MVP Digital Cloud Technologies

Transcript of Windows Azure Security and Diagnostics

Page 1: Windows Azure Security and Diagnostics

День 3. Безопасность и диагностика Фещенко АлександрWindows Azure MVPDigital Cloud Technologies

Page 2: Windows Azure Security and Diagnostics

AgendaБезопасность Windows

Azure

Role Based Identity vs Claims Based Identity

Windows Identity Foundation

Windows Azure Access Control Service

Windows Azure Diagnostics

Page 3: Windows Azure Security and Diagnostics

Уровни безопасности

Физическая безопасность

Безопасность ОС

Сетевая безопасность

Безопасность приложения

Page 4: Windows Azure Security and Diagnostics

Уровни безопасности Windows Azure Управляемый код. Partial Trust.

Windows Account

Firewall. Правила из конфигурации

VM. Фиксированные CPU, RAM

Root Partition Packet Filter

Network ACLs

Page 5: Windows Azure Security and Diagnostics

Что такое личность?Набор информации о сущности

Уникальный идентификатор

Фотография

Пол

Возраст

Дата регистрации

Page 6: Windows Azure Security and Diagnostics

Role Based Identity

Логин и пароль привязываются к личностиЛичность принадлежит одной или более группПриложение использует группы для авторизации личностиРеализация в облаке:

ASP.NET Membership (SQL Azure …)Domain Join (Windows Azure Connect)

Page 7: Windows Azure Security and Diagnostics

Claims Based Identity

Page 8: Windows Azure Security and Diagnostics

Claims-Based Identity

Логин и пароль привязываются к токенуТокен это набор утвержденийПриложение использует утверждения для авторизации личностиУтверждения могут содержать любую другую информацию

Page 9: Windows Azure Security and Diagnostics

Термины Claims Based Аутентификации- Relying party – зависимое

приложение- Security Token Service – сервис по

генерации токенов- Identity Provider – поставщик

данных о пользователе

Page 10: Windows Azure Security and Diagnostics

Структура токена

Токен

Возраст

Фамилия

Имя

Сигнатура

Токен содержит широкий набор информацииЗадачи по управлению личностями возлагаются на Identity Provider-аSTS создает токены базируясь на информации, полученной от Identity Provider-а

Page 11: Windows Azure Security and Diagnostics

Windows Identity FoundationФреймворк для ускоренного построения приложений, использующий claims-based парадигмуУпрощает создание STSРеализует большинство промышленных стандартовЛегко интегрируется с веб-сайтами, сервисами и облачными приложениями

Page 12: Windows Azure Security and Diagnostics

Веб роль и WIFПростой визард для конфигурирования любого веб-приложения

Page 13: Windows Azure Security and Diagnostics

WIF инфраструктура для ASP.NET

FAM SAM CAMРедиректОбработка токенаФильтрация

Сессия Авторизация

Windows Azure

Claims

Page 14: Windows Azure Security and Diagnostics

Windows Azure Access Control Service

Page 15: Windows Azure Security and Diagnostics

Access Control ServiceЧасть Azure Integration ServicesПоддержка ODataПоддержка SAMLWS Trust, WS Federation, OpenID Множество социальных провайдеров

FacebookLiveIdADFS 2.0

Page 16: Windows Azure Security and Diagnostics

Аутентификация пользователя (I)

Windows Azure

Page 17: Windows Azure Security and Diagnostics

Аутентификация пользователей (II)

Windows Azure

Windows Azure

Access Control ServiceSTS в облаке

Упрощает взаимодействие с другими IPs

WS-Federation, WS-Trust, Open ID, OAuth

Page 18: Windows Azure Security and Diagnostics

Аутентификация через социальные провайдеры

Windows Azure

Page 19: Windows Azure Security and Diagnostics

Access Control Service

demo

Page 20: Windows Azure Security and Diagnostics

Windows Azure Diagnostics

Page 21: Windows Azure Security and Diagnostics

Диагностика в Windows AzureРаспределенный мониторинг приложений и сбор данныхВыберите что собирать и когда собирать•Event Logs, Trace Logs, Performance Counters•IIS Web/Failed Request Logs, Crash Dumps,е•Другие логи файлы(custom apps, other web/app servers)

Cloud Friendly•Централизованно управляйте множеством инстансов

Возможность удаленной конфигурации

Page 22: Windows Azure Security and Diagnostics

Диагностика: Single Server vs Cloud

CloudДинамическая среда

Локальный доступ невозможенМножество узловРаспределенные данные

Single ServerСтатическая среда

Локальный доступ возможенДанные и средства в одном местеIn-Place изменения

Page 23: Windows Azure Security and Diagnostics

Экземпляр роли

Как это работает в целом?Экземпляр роли запускаетсяЗапускается диагностический мониторМонитор конфигурируется•Императивно во время старта•Удаленно в любое время•Конфигурация сохраняется в хранилище

Монитор буферизирует данные локально•Пользователь может установить квоту(FIFO)

Инициация передачи данных из буфера в хранилище•По расписанию•По требованию

Page 24: Windows Azure Security and Diagnostics

Расположение данных диагностики

Windows Event Logs WADWindowsEventLogsTable

Performance Counters WADPerformanceCountersTable

Windows Azure Logs WADLogsTable

Diagnostic Infrastructure Logs WADDiagnosticInfrastructureLogsTable

IIS Logs wad-iis-logfiles - WADDirectoriesTable (index entry)

IIS Failed Request Logs wad-iis-failedreqlogfiles - WADDirectoriesTable (index entry)

Crash Dumps wad-crash-dumps - WADDirectoriesTable (index entry)

Custom File Based Logs (must be configured) - WADDirectoriesTable (index entry)

Page 25: Windows Azure Security and Diagnostics

Конфигурация диагностики

Программно используя DiagnosticMonitor.Start()Декларативно используя диагностический модуль

Конфигурирование диагностики•DiagnosticsMonitor/RoleInstanceDiagnosticManager•diagnostics.wadcfg (XML конфигурация)•Утилиты: Azure MMC, Operations Manager , Cerebrata, многие другие…Windows Azure PowerShell Cmdlets

Page 26: Windows Azure Security and Diagnostics

Diagnostic Monitor (Запуск роли)• DiagnosticMonitorConfiguration dc =• DiagnosticMonitor.GetDefaultInitialConfiguration();

• dc.WindowsEventLog.DataSources.Add("Application!*");• dc.WindowsEventLog. ScheduledTransferLogLevelFilter = • LogLevel.Error;• dc.WindowsEventLog.ScheduledTransferPeriod = • System.TimeSpan.FromMinutes(5.0);• // добавить другие источники

• DiagnosticMonitor.Start("DiagnosticsConnectionString", dc);

Page 27: Windows Azure Security and Diagnostics

RoleInstanceDiagnosticManager (в любое время)• CloudStorageAccount storage = CloudStorageAccount.Parse(…);

• RoleInstanceDiagnosticManager rdm = new • RoleInstanceDiagnosticManager(storage, DeploymentId,

• RoleName, RoleInstanceId);

• DiagnosticMonitorConfiguration config = rdm.GetCurrentConfiguration();

• dc.WindowsEventLog.DataSources.Add("Application!*");• dc.WindowsEventLog. ScheduledTransferLogLevelFilter = • LogLevel.Error;• dc.WindowsEventLog.ScheduledTransferPeriod = • TimeSpan.FromMinutes(5.0);• // добавить другие источники

• rdm.SetCurrentConfiguration(config);

Page 28: Windows Azure Security and Diagnostics

Windows Azure Diagnostics

demo

Page 29: Windows Azure Security and Diagnostics

Спасибо