SysAdmin Anywhere

advertisement
SysAdmin Anywhere
Облачный сервис для удаленного
администрирования рабочих станций
Игорь Маркин / info@ria-media.net
Андрей Калганов / kalganovandrey@gmail.com
http://www.ria-media.net
Идея
Создать сервис для удаленного управления
компьютерами:
• Доступ к компьютеру, в целях безопасности,
не должен быть открыт из интернета
• Управление компьютером должно быть
возможно из любого места
• Компьютер должен быть доступен в
режиме онлайн
Реализация
Для реализации необходим посредник,
который:
• Поддерживает постоянный защищенный
канал с удаленным компьютером
• Обеспечивает доступ к консоли управления
• Пересылает запросы и ответы
Windows Azure
Почему Windows Azure?
• Знакомая платформа
• Легкое масштабирование
• Балансировщик нагрузки
• Разделение ролей
• Хранилище
• SQL Azure
Архитектура
Silverlight
Web Role
SQL
Azure
WPF, Win32
WP7
Worker
Role
Storage
Worker Role
Клиенты
Администраторы
Регистрация
Биллинг
Storage
SQL
Azure
Worker Role
WCF: ConcurrencyMode = Multiple, InstanceContextMode = Single
Клиенты
Клиенты
Клиенты
Администраторы
Администраторы
Администраторы
Client Id
Session Id
Customer Id
Session Key
Callback Channel
Admin Id
Session Id
Customer Id
Session Key
Callback Channel
Передача данных
Авторизация
Обмен
ассиметричными
ключами(RSA)
Передача
симметричного
ключа(AES)
Авторизация
(SHA256)
Передача данных
Сериализация
JSON
Сжатие(ZIP)
Шифрование
(AES)
Что не подошло?
Очереди (queues)
• Ответ может превысить максимальный
размер для сообщения
• Можно служебную информацию оставить в
сообщении, а текст ответа записать в BLOB.
В сообщении указать ссылку на BLOB
• При ссылке на BLOB, если сообщение
удалено по тайм-ауту, BLOB остается
Что не подошло?
Очереди (queues)
Что не подошло?
Таблицы (tables)
• Только три ключевых поля (PrimaryKey,
RowKey и Timestamp)
• При использовании в запросе других полей,
большее время на запрос
• Может оказаться, что этих полей пока еще
нет и из-за этого происходит исключение
• Трудно привыкнуть после опыта работы с
SQL
Спасибо за внимание!
Идеи и предложения по реализации
SysAdmin Anywhere:
info@ria-media.net
Download