Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП / ООП / ры_приложений_полная_книга.pdf
Скачиваний:
500
Добавлен:
18.02.2017
Размер:
7.08 Mб
Скачать

используемых ими типах данных, что способствует повышению возможности взаимодействия и совместимости.

При проектировании интерфейса можно пользоваться средствами моделирования, например, Web Service Software Factory: Modeling Edition (http://msdn.microsoft.com/servicefactory/)

группы patterns & practices. Или можно создать дизайн интерфейса, используя XML, XSD и схемы, а затем с помощью такого инструмента, как WSDL.exe, с ключом /server сгенерировать описание интерфейса. Технологии с применением шины сообщений, такие как Microsoft BizTalk Server, способствуют использованию принципов контрактно-ориентированного проектирования.

При контрактно-ориентированном проектировании необходимо помнить следующие принципы:

Работа с XML-схемами и типами данных означает, что вы не оперируете и не можете оперировать категориями типов данных, характерных для той или иной платформы. Это может усложнить описание интерфейса, но обеспечит максимальную возможность взаимодействия и совместимость. Там где требуется применение сложных структур данных, составляйте их из простых и стандартных XML-типов, которые могут использоваться любыми клиентами.

Рассмотрите платформы, клиентов и системы, которые могут взаимодействовать с сервисом. Учтите все возможные ограничения по применяемым типам данных или форматам.

Применяйте специальные инструменты для проектирования контрактов сервиса. Это может существенно упростить и ускорить процесс.

По возможности в процессе проектирования контракта тесно сотрудничайте с заинтересованными сторонами. Они могут выдвигать особые требования или предложения, которые упростят использование контракта, обеспечат его более широкое распространение и повысят возможности повторного использования.

Более подробно контрактно-ориентированное проектирование рассматривается в статье «Contract-First Service Development» (Контрактно-ориентированная разработка сервисов) по адресу http://msdn.microsoft.com/en-us/magazine/cc163800.aspx.

Вопросы безопасности

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

Безопасность на транспортном уровне

Безопасность на транспортном уровне используется для обеспечения сквозной безопасности между двумя конечными точками при передаче учетных данных и утверждений пользователя. Защита канала предотвращает возможный злонамеренный доступ ко всем сообщениям, передаваемым по каналу. Общими подходами обеспечения безопасности на транспортном уровне являются применение шифрования по протоколам Secure Sockets Layer (SSL) и Internet Protocol Security (IPSec). Принимая решение об использовании безопасности на транспортном уровне, руководствуйтесь следующими соображениями:

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

Если взаимодействия между сервисом и потребителем осуществляется без посредников, может использоваться безопасность на транспортном уровне. Если сообщения проходят через одного или более посредников, следует применять безопасность на уровне сообщения, поскольку, в противном случае, сообщение дешифруется и повторно шифруется на каждом посреднике, что представляет угрозу безопасности.

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

Безопасность на уровне сообщения

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

Реализуйте безопасность на уровне сообщения для конфиденциальных сообщений, передаваемых за пределы защищенной сети, как например, для сервисов, предоставляемых через Интернет. Но не забывайте, что безопасность на уровне сообщения, как правило, имеет большее негативное влияние на производительность, чем безопасность на транспортном уровне. Для повышения общей производительности можно использовать частичное или выборочное шифрование и подпись сообщений.

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

Соседние файлы в папке ООП