Прослуховування HTTP

Як ви вже, напевно, знаєте, протокол передачі гіпертексту (HTTP) використовується в Інтернеті для передачі запитів і доставки сторінок HTML в браузери Технологія Web-служб вивела цей протокол на нову орбіту, задіявши його для запиту і доставки інформаційних повідомлень між різними системами

З виходом пакету оновлень SP1 підключення по протоколу HTTP підтримай-Внімакіе вають стиск

Кінцевий точкою є прослуховує вузол, або адреса, що використовується для отримання запитів до Web-службам по протоколу HTTP Сервер Web-служб може обслуговувати безліч кінцевих точок, кожна з яких може містити кілька методів, або типів повідомлень, які може обробити

Web-служба є кінцевий точкою разом з асоційованим кодом програми і визначенням способу обміну даними Взагалі-то, кінцевий точкою є тільки сама Web-служба, але вона володіє логікою поведінки

Щоб мати можливість отримувати дані Web-служби, потрібно написати оп-

■ На замітку ределенний програмний код У Visual Studio включений ряд прикладів програм, призначених для роботи з Web-службами Використовуючи тільки браузер, ви можете побачити код WSDL, однак не зможете виконати метод або отримати дані від Web-служби SQL Server

Процес http sys

Раніше, для того щоб створити Web-службу для даних SQL Server, необхідно було побудувати кілька рівнів: IIS, програмний код NET, систему обслуговування черги повідомлень і обєкти ADO для підключення до SQL Server на стороні клієнта Кожен з цих шарів вносив свій внесок у загальну продуктивність системи

Набагато ефективнішим способом реалізації Web-служби є використання високопродуктивного прослуховування запитів HTTP, вбудованого в нове покоління операційних систем На рівні ядра систем Windows Server 2003, Windows ХР і Windows Vista запущено процес HTTP sys, який прослуховує запити HTTP SQL Server 2005 використовує кінцеві точки процесу HTTP sys

Windows Server 2003 використовує сервер IIS версії 60, який, у свою чергу, Увага використовує HTTP sys в якості служби прослуховування Таким чином, в цій конфігурації не виникає конфліктів між одночасним прослуховуванням серверами IIS і SQL Server Водночас Windows ХР SP2 продовжує використовувати IIS 51, який здійснює прослуховування самостійно, без використання служби HTTPsys Це означає, що якщо вам потрібно створити Web-службу в Windows ХР, то слід або відключити сервер IIS, або конфігурувати порти так, щоб уникнути конфлікту між IIS і HTTPsys, які по замовчуванням прослуховують один і той же порт з номером 80

Неявні кінцеві точки

У SQL Server 2005 існують два методи створення кінцевих точок: явний і неявний Неявний метод використовує інструкцію DDL CREATE ENDPOINT і дозволяє управляти створенням самому серверу баз даних Цей метод якраз і рекомендується використовувати: CREATE ENDPOINT sql_endpointtest STATE = STARTED AS HTTP (

PATH = */sql,

AUTHENTICATION = (INTEGRATED),

PORTS = (CLEAR),

SITE = , CLEARJPORT = 20000

)

FOR SOAP (

WEBMETHOD http://tempUriorg/.’GetSqlInfo

(name=masterdboxp_msver1,

SCHEMA=STANDARD),

WSDL = DEFAULT,

SCHEMA = STANDARD ,

DATABASE = master

)

Інструкція CREATE ENDPOINT має два розділи: транспортний, який визначає, як буде прослуховуватися кінцева точка, і розділ наповнення, що містить деталі методів і повідомлень

Транспортний розділ інструкції CREATE ENDPOINT, що починається з ключового слова AS, конфігурує шлях до кінцевий точці, метод аутентифікації і порти У наведеному вище прикладі методом транспортування був обраний HTTP (а не TCP / IP)

Порт може бути налаштований як вільний (clear) або захищений (SSL) Вільні порти вимагають вказівки номера порту в параметрі Clear_Port

Розділ наповнення визначає вміст кінцевий точки, зазвичай це FOR SOAP У цьому розділі також визначаються Web-методи, тип WSDL, схема і база даних

Розділ методів є критичним – саме в ньому кінцева точка підключається до збереженим процедурам або чергах повідомлень брокера служб У наведеному вище прикладі в розділі методів був визначений виклик збереженої процедури Одна кінцева точка може бути повязана з кількома різними методами

Явні кінцеві точки

Альтернативою створення підключення до HTTP sys самим сервером є жорстке програмування (конфігурація) цього підключення з використанням явної кінцевий точки Особисто я рекомендую завжди використовувати неявні кінцеві точки і віддавати управління підключеннями до HTTP sys на відкуп серверу баз даних

Конфігурування нтрр sys

Файл конфігурації HTTPcfg відмінно підходить для опитування процесів, які прослуховують HTTPsys, і для управління прослуховуванням підключень Коли HTTPcfg звертається до ACL, він використовує список управління доступом (Access Control List) Це утиліта командного рядка, що входить до складу операційної системи Windows Server 2003, однак ви можете завантажити її копію і для використання в Windows ХР Ця утиліта також включена в інструментарій MSFT Service Toolkit-windowsxp-kb83 8079-supporttools-enuexe, – який можна завантажити з сайту корпорації Microsoft

WSDL

Мова описів Web-служб WSDL є стандартним засобом, вбудованим практично в будь-яку Web-службу Він використовується клієнтом для виявлення методів і повідомлень, доступних в конкретній Web-службі SQL Server і HTTP sys забезпечують підтримку WSDL в трьох можливих варіантах: стандартному, спрощеному і вибірковому Мабуть, стандартний варіант можна назвати кращим, незважаючи на те, що він словесний

Після створення кінцевий точки протестуйте її наявність і активність Найпростіше для цього в Web-браузері опитати WSDL В Internet Explorer використовуйте адресу URL http:// сервер: порт / pathPwsdl (рис 321)

Спрощений варіант WSDL є більш компактною версією WSDL

Для створення вибіркового WSDL існує системна збережена процедура, яка повертає стандартний WSDL, який може бути викликаний з збереженої процедури вибіркового WSDL для генерування базового WSDL Після цього стандартний WSDL може бути звільнений або доповнений нестандартної інформацією, яку вимагає ваша архітектура SOAP

Puc 321 Перегляд WSDL в Internet Explorer шляхом переходу до сервера шляхом, запропонованим Web-службою

Захист кінцевих точок

При передачі даних через Інтернет основну увагу слід приділяти питанням безпеки Web-служби SQL Server 2005 мають дворівневу захист Спочатку права доступу перевіряються на транспортному рівні бібліотекою HTTP sys шляхом аутентифікації, а потім повторна перевірка виконується вже самим сервером Жоден з цих рівнів не забезпечує анонімний доступ

Аутентифікація на транспортному рівні HTTP може бути налаштована в режимах Basic, Digest або Integrated (NTLM, Kerberos)

Реєстраційні дані SQL Server передаються в пакеті SOAP, створюваному взаємодіючим із службою додатком Так як пакет може бути зашифрований, немає необхідності відправляти реєстраційні дані у відкритому вигляді Якщо ви використовуєте змішану реєстрацію SQL Server і пакет SOAP аутентифицирующей в SQL Server з використання реєстраційної записи SQL Server, для шифрування даних важливо використовувати захищеному режимі

Резюме

Незважаючи на те що більшість операцій доступу до даних досі здійснюється за допомогою ADONET, мені здається, що Web-служби є альтернативним варіантом архітектурного рішення, який вимагає глибокого розуміння і повинен використовуватися в ситуаціях, коли це має сенс Незважаючи на додаткове навантаження, що накладається використанням Web-служб, і складності повязаного з ними конфігурування, Web-служби забезпечують підвищену захищеність, інтероперабельність і гнучке розгортання в Інтернеті

У наступному розділі ми розширимо список варіантів підключення до даних і розглянемо InfoPath – технологію Microsoft для доставки даних в офіс Самі вирішуйте, як ставитися до цієї технології, проте в будь-якому випадку з нею потрібно познайомитися ближче

InfoPath і SQL Server 2005

Основними завданнями додатків, які здійснюють доступ до SQL Server 2005, є вилучення інформації з баз даних, її ефективне відображення користувачам та підтримка зберігання виробничої інформації

Доступ до цієї інформації зазвичай здійснюється за допомогою форм Багато користувачів, що працюють з інформацією, проводять більшу частину робочого дня за заповненням форм Деякі з даних, що відображаються і вводяться в цих формах, беруть свій початок в базах даних SQL Server У контексті виробничих умов, в яких швидко змінюються вимоги до інформаційного забезпечення, дуже важливою є можливість швидко створювати і гнучко адаптувати користувача форми

Існує кілька підходів до створення форм, використовуваних для введення і відображення даних SQL Server, в тому числі форми Windows і Web-форми Програма Microsoft InfoPath 2003 пропонує альтернативний спосіб створення таких форм

Цю главу можна розглядати як введення в програму InfoPath 2003 У ній будуть описані деякі засоби цієї програми та порядок їх використання в роботі з SQL Server

Джерело: Нільсен, Пол Microsoft SQL Server 2005 Біблія користувача : Пер з англ – М: ООО ІД Вільямс , 2008 – 1232 с : Ил – Парал тит англ

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*