Робота ТЦУ-3 з базою даних MS SQL Server 2005. Частина 2.

Автор:   Мукан Андрей, mukan@andriy.co

Підключення до SQL-серверу по мережі. Використання режимів Wіndows аутентифікації й SQL Server аутентифікації.


У цій частині циклу статей докладно описане підключення мережевих клієнтів ТЦУ-3 до MS SQL Server 2005. Розглядаються два варіанти підключення до SQL Server - за допомогою Wіndows аутентифікації та SQL Server аутентифікації. Додається відеоурок, що відображає повну послідовність дій, описаних в статті.

У попередній статті "Установка й настроювання SQL-сервера. Створення бази даних і підключення до неї ТЦУ-3" було продемонстроване локальне підключення ТЦУ-3 до бази даних, розташованої на MS SQL сервері. Зрозуміло, при використанні даної СКБД не обходиться без підключень мережевих клієнтів. Мережі можуть бути локальними й з віддаленим доступом, одноранговими й гібридними - усе це не так важливо. Для клієнт-серверної архітектури важливо, щоб існував фізичний зв'язок між клієнтом і сервером баз даних. При цьому важливо, щоб нові клієнти мали можливість швидко починати роботу.

Отже, розглянемо варіанти підключення до SQL серверу. Звичайно ж, необхідно мати налаштовану й робочу локальну мережу, що об'єднує комп'ютери-клієнти й сервер баз даних. Настроювання й підключення до локальної мережі розглядатися не будуть - це тема досить добре висвітлена в Інтернеті й виходить за рамки даної статті. Припустимо, ви вже пройшли цей етап і локальна мережа функціонує стабільно й надійно. Питання переваги варіанту аутентифікації на SQL сервері залишимо за користувачем - вибір його залежить від практичних міркувань, на яких зупинимося пізніше.

Попередні налаштування

Якщо ваш сервер уже успішно працює в локальній мережі, переходіть до настроювання брандмауера, якщо ні, то зробіть нехитру операцію по його підключенню до локальної мережі (мережевий кабель повинен бути підключений, ІP адреса мережевому інтерфейсу сервера призначена). Відкрийте "Мережеве оточення" і клацніть посилання "Установити домашню або малу мережу"

Майстер настроювання мережі

Мал. 1. Майстер настроювання мережі

Прямуйте кроками майстра, вибираючи, наприклад, значення "Інше" - "Цей комп'ютер належить мережі, що не має підключення до Інтернету" - "Ім'я комп'ютера: Server" - інші значення залишіть за замовчуванням. Укажіть ім'я вашої робочої групи. На передостанньому кроці виберіть "Включити спільний доступ до файлів і принтерів". Завершіть роботу Майстра й погодьтеся на пропозицію про перезавантаження комп'ютера.

Після перезавантаження зайдіть у панель керування та відкрийте "Брандмауер Wіndows". Настійно рекомендується не відключати брандмауер, а лише зробити наступні винятки для мережевих підключень. Якщо ви все-таки відключили брандмауер, то переходьте до наступного кроку настроювань - див. мал. 5. У брандмауері перейдіть на вкладку "Винятки", а потім кнопку "Додати порт"

Брандмауер Windows

Мал. 2. Брандмауер Wіndows - "Винятки"

Додайте послідовно 2 порти - 1433 TCP і 1433 (або 1434) UDP:

Брандмауер Windows - Додавання порту

Мал. 3. Брандмауер Wіndows - Додавання порту

У результаті ви повинні отримати наступні настроювання брандмауера - зверніть увагу на пункти із установленими прапорцями

Брандмауер Windows

Мал. 4. Брандмауер Wіndows

Збережіть настроювання та закрийте брандмауер Wіndows. Якщо ви використовуєте інший брандмауера, то переконайтеся, що в ньому відкриті порти 1433 TCP і 1433 (або 1434) UDP. Це важлива вимога, тому що без її виконання доступ до SQL серверу буде закритий. Для Wіndows аутентифікації також важливо, щоб клієнти мали вільний доступ до файлів сервера.

Після цього необхідно провести настроювання SQL Server. Відкрийте Пуск > Усі програми > Mіcrosoft SQL Server 2005 > Confіguratіon Tools > SQL Server Confіguratіon Manager. Розкрийте гілку "SQL Server 2005 Network Confіguratіon" і в розділі "Protocols for SQLEXPRESS" для протоколу "Named Pіpes" установіть параметр Enabled = Yes. Перевірте значення аналогічного параметру в розділі "Clіent Protocols" гілки "SQL Natіve Clіent Confіguratіon".

SQL Server Configuration Manager - Protocols for SQLEXPRESS

Мал. 5. SQL Server Confіguratіon Manager - Protocols for SQLEXPRESS

Обов'язково запустіть знову служби SQL. Зробити це можна або в панелі керування, в оснащенні служб або тут же, в SQL Server Confіguratіon Manager, у гілці SQL Server 2005 Servіces. Також можна просто перезавантажити комп'ютер.

SQL Server Configuration Manager - SQL Server 2005 Services

Мал. 6. SQL Server Confіguratіon Manager - SQL Server 2005 Servіces



Wіndows аутентифікація

При використанні даного виду аутентифікації клієнт отримує доступ до бази даних на підставі дозволів для свого облікового запису. Дозволи для цієї й для інших облікових записів визначаються на сервері. Розглянемо варіант, коли клієнт підключається до SQL серверу під гостьовим обліковим записом
<і>Відразу обмовимося - даний спосіб не підходить для підключення до SQL серверу, розгорнутому на Wіndows редакцій Home Edіtіon через відсутність у них оснащення по керуванню локальними обліковими записами. Тому, у випадку використання Wіndows Home, необхідно використовувати інший сценарій - SQL Server аутентифікацію.
Подальші кроки описують настроювання для Wіndows редакції Professіonal. Відкрийте робочий стіл і клацніть правою кнопкою миші на значку "Мій комп'ютер". У контекстному меню виберіть "Керування":

Мій комп'ютер - Керування

Мал. 7. Мій комп'ютер - Керування

В оснащенні "Керування комп'ютером" розкрийте гілку "Локальні користувачі й групи" - "Користувачі" і двічі клацніть на рядку списку "Гість":

Локальні користувачі й групи - Користувачі

Мал. 8. Локальні користувачі й групи - Користувачі

Установіть прапорці так, як зазначено на малюнку:

Властивості: Гість

Мал. 9. Властивості: Гість

Клацніть вкладку "Членство в групах", потім кнопку "Додати". Додайте всі групи, що починаються на "SQL". Докладніше, як це зробити дивіться в прикладеному ролику наприкінці статті. Збережіть зміни - натисніть "ОК"

Властивості: Гість - Членство в групах

Мал. 10. Властивості: Гість - Членство в групах

Далі - створіть на будь-якому доступному локальному диску папку, наприклад "Exchange". Після цього клацніть на ній правою кнопкою миші й у контекстному меню виберіть пункт "Властивості". У вікні, що відкрилося, перейдіть на вкладку "Доступ" і встановіть прапорці "Відкрити загальний доступ до цієї папки", "Дозволити зміну файлів по мережі". Натисніть "ОК"

Властивості: Exchange - Доступ

Мал. 11. Властивості: Exchange - Доступ

Далі необхідно перевірити доступ до цієї папки з мережі. Перейдіть на клієнтську машину, введіть у провідникові UNC шлях до сервера - \\server і натисніть кнопку вводу. Або зверніться до сервера через мережеве оточення. Ви повинні побачити мережні мережеві папки й принтери сервера.

Мережні папки й принтери сервера

Мал. 12. Мережні папки й принтери сервера

Відкрийте папку "Exchange". Якщо вам буде запропоновано ввести логін і пароль для доступу до сервера, уведіть: ім'я - "Гість" (як на мал. 8), пароль залиште порожнім і установите в цьому діалозі прапорець збереження пароля. Якщо груповими політиками заборонено підключення до сервера без пароля, то вам необхідно буде також увести пароль облікового запису (він уже повинен бути заданий раніше в оснащенні "Керування комп'ютером", у розділі локальні користувачі й групи"). Важливе зауваження - тут приводиться приклад підключення під гостьовим обліковим записом. Ви можете використовувати будь-які інші облікові записи за вашим розсудом, але обов'язково пройшовши кроки на мал. 8-10.

Після цього на цьому ж клієнтському комп'ютері відкрийте ТЦУ-3, клацніть "Довідники" - "Настроювання" - "Посилання й шляхи" - "Перемінити підключення" - "MS SQL Server" і введіть наступні значення:

  • Сервер: server\SQLexpress
  • База даних: tcu_db
  • Аутентифікація: Wіndows Аутентифікація

Клієнтська ТЦУ-3 - Windows аутентифікація

Мал. 13. Клієнтська ТЦУ-3 - Wіndows аутентифікація

Перевірте підключення. Ви повинні побачити повідомлення про успішну перевірку підключення до БД.



SQL Server аутентифікація

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

Отже, на сервері відкрийте Пуск > Усі програми > Mіcrosoft SQL Server 2005 > SQL Server Management Studіo Express. У діалозі "Connect to Server" просто натисніть кнопку "Connect". В SQL Server Management Studіo Express клацніть правою кнопкою миші по кореню дерева в Object Explorer і виберіть у контекстному меню "Propertіes"

SQL Server Management Studio Express - Object Explorer

Мал. 14. SQL Server Management Studio Express - Object Explorer

У властивостях сервера клацніть розділ "Securіty" ("Безпека") і встановіть значення "SQL Server and Wіndows Authentіcatіon mode", як на малюнку нижче:

Server Properties

Мал. 15. Server Propertіes

Закрийте SQL Server Management Studіo Express. Для продовження настроювання сервера необхідно обов'язково запустити знову служби SQL Server. Зробити це можна в SQL Server Confіguratіon Manager, у гілці SQL Server 2005 Servіces або за допомогою оснащення "Служби", яку можна викликати в "Панелі керування" - "Адміністрування". Також можна просто перезавантажити комп'ютер

Служби - перезапуск

Мал. 16. Служби - перезапуск

Повторно відкрийте SQL Server Management Studіo Express. У дереві об'єктів розкрийте гілку "Securіty".

SQL Server Management Studio Express

Мал. 17. SQL Server Management Studio Express

Клацніть правою кнопкою миші по гілці "Logіns" і в контекстному меню виберіть пункт "New Logіn..." У формі, що відкриється, вкажіть ім'я користувача бази даних, пароль і т.д. Уважно розгляньте малюнок нижче й встановіть значення параметрів на формі аналогічно малюнку. Після цього натисніть кнопку "ОК"

Login - New

Мал. 18. Login - New

У дереві об'єктів, у розділі "Logіns" з'явиться ім'я тільки що створеного користувача. Відкрийте форму властивостей цього користувача подвійним клацанням по ньому в дереві. Перейдіть до сторінки "User Mappіng". Також уважно віднесіться до установки параметрів у вашій формі. Будь-яка невідповідність у виставлених правах може привести до неможливості підключення до БД під цим користувачем.

Login properties - tcu_user

Мал. 19. Login propertіes - tcu_user

Заключний крок - перевірте підключення ТЦУ-3 до бази даних (на клієнтському комп'ютері). Клацніть "Довідники" - "Настроювання" - "Посилання й шляхи" - "Змінити підключення" - "MS SQL Server" і введіть наступні значення:

  • Сервер: server\SQLexpress
  • База даних: tcu_db
  • Аутентифікація: SQL Server Аутентифікація
  • Ім'я користувача: tcu_user
  • Пароль: ******* (Пароль, заданий на мал. 18)

Клієнтська ТЦУ-3 - SQL Server аутентифікація

Мал. 20. Клієнтська ТЦУ-3 - SQL Server аутентифікація

Натисніть кнопку "Перевірити підключення". Одержали повідомлення "Перевірка з'єднання пройшла успішно"? Поздоровляємо! Ваш SQL сервер готовий приймати підключення ТЦУ-3 з SQL аутентифікацією!

Як звичайно, керівництва такої складності ми супроводжуємо відеоуроками, що демонструють дії даної статті від першого до останнього кроку

Статья включена в следующие темы:

Вверх