Программирование >>  Программирование баз данных 

1 ... 200 201 202 [ 203 ] 204 205 206 ... 346


Оконечные точки HTTP не поддерживаются в версии SQL Server Express. Кроме того, операционная система Windows ХР не поддерживает некоторые из обязательных основополагающих технологий. Иными словами, оконечные точки HTTP не могут применяться, если приложение работает под управлением версии SQL Server Express или развернуто в операционной системе Windows ХР.

Краткое описание оконечных точек HTTP приведено ниже. Прежде всего следует отметить, что оконечные точки HTTP предназначены для поддержки протокола SOAP (Simple Object Access Protocol- простой протокол достутта к объектам). А протокол SOAP, в свою очередь, призван обеспечить устранение многих проблем доступа к службам по Web, в том числе связанных с применением брандмауэров. До внедрения протокола SOAP для обеспечения взаимодействия объектов главным образом требовалось открывать некоторые специальные порты и передавать через них двоичные вызовы, которыми обмениваются объекты. Количество возникающих при этом проблем нарушения защиты бьшо чрезвычайно велико, и одна из причин заключалась втом, что приходилось обеспечивать беспрепятственное прохождение двоичного трафика, относящегося к Web-службам, через брандмауэры. Поэтому отделы информационной технологии возражали против использования Web-служб.

Краткое (или даже очень краткое) повторение темы индексов XML

Индексы XML уже рассматривались в главе 8, но к тому времени еще не бьшо приведено описание типа данных XML, а также ничего не бьшо сказано о различных опциях и технологиях, связанных с использованием языка XML. Учитывая это, автор решил еще раз напомнить читателю о том, что, работая с данными типа XML, можно воспользоваться новыми средствами индексации XML.

Индексы XML впервые бьши введены в версии SQL Server 2005 и заслуживают очень высокой оценки. Безусловно, с помощью индексов XML нельзя решить абсолютно все задачи, но они позволяют по крайней мере не отказываться от использования данных, представленных в коде XML, в ситуациях, когда это оправдано, и вместе с тем поддерживать определенный уровень производительности.

Индексы XML подробно обсуждались в главе 8.

Оконечные точки HTTP

В отношении данной темы следует отметить, что решение о том, следует ли включать ее описание в настоящую книгу, бьшо полностью передано на мое усмотрение. Дело в том, что задачи создания, настройки, защиты, а также определения многих других аспектов использования оконечных точек HTTP в основном относятся к сфере деятельности администратора базы данных. С другой стороны, вполне очевидно, что основное направление использования оконечных точек HTTP (в качестве собственной Web-службы) безусловно является прерогативой разработчика. Поэтому в настоящей главе принят промежуточный подход: приведено общее описание оконечных точек HTTP и показано, в чем состоит их значимость с точки зрения проектировании, но исключено все то, что касается функций администрирования оконечных точек HTTP.



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

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

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

Оконечные точки HTTP главным образом предназначены для создания Web-служб, поддержка которых предусмотрена непосредственно в программном обеспечении СУБД SQL Server. СУБД SQL Server обеспечивает ввод и обработку запросов Web-служб без привлечения дополнительных программ. Как правило, такие запросы представляют собой требования на получение информации, поступающие из базы данных. При этом, безусловно, предусмотрена возможность управлять тем, какой объем информации должен стать доступным и что 1Г)жно сделать для ее получения.

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

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



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

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

Определение представления. Этот уровень доступа позволяет указать, имеет ли пользователь право хотя бы просматривать информацию об оконечной точке (метаданные).

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

Методы оконечной точки HTTP

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

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

USE AdventureWorks GO

CREATE PROCEDURE spListBikes AS

SELECT p.ProductID, p.ProductNumber, p.Name, p.ListPrice FROM Production.Product AS p

JOIN Production.ProductInventory AS i

ON p.ProductID = i.ProductID JOIN Production.ProductSubcategory psc

ON p.ProductSubcategorylD = psc.ProductSubcategorylD JOIN Production.ProductCategory pc

ON psc.ProductCategorylD = pc.ProductCategorylD WHERE p.ListPrice > 0

AND p.DiscontinuedDate IS NULL AND pc.Name = Bikes ORDER BY p.Name



1 ... 200 201 202 [ 203 ] 204 205 206 ... 346

© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки.
Яндекс.Метрика