Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
конспект лекцій розробка.docx
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
24 Мб
Скачать
☆

3.2. Налаштування параметрів служб.Налаштування параметрів з'єднань. Управління доступом до функціональних можливостей компонентів.

Налаштування параметрів служб

SQL Server 2005 Surface Area Configuration можна також використовувати для перегляду і установки типу запуску служб SQL Server. Запустите SQL Server 2005 Surface Area Configuration, потім клацніть посилання Surface Area Configuration For Services And Connections (Налаштування поверхні атаки для служб і з'єднань), яке знаходиться в головному вікні. Відобразиться діалогове вікно Surface Area Configuration For Services And Connections (Налаштування поверхні атаки для служб і з'єднань), після чого буде вироблено визначення конфігурація служб і з'єднань для усіх запущених екземплярів SQL Server 2005 на комп'ютері, з яким встановлено з'єднання. Коли визначення буде закінчено, в лівій частині діалогового вікна у вигляді ієрархічної структури відобразиться список усіх виявлених служб і компонентів. Для організації елементів дерева в необхідному порядку (мал. 3-3) використовуйте одну з вкладок : View by instance (Перегляд по екземплярах) або View by component (Перегляд по компонентах).

Залежно від встановлених компонентів можуть бути відображені наступні елементи списку.

Database Engine (Ядро бази даних) Запускається як служба з ім'ям SQL Server (instance_name), що виводиться, де instance_name - ім'я екземпляра. Виконуваним файлом для цієї служби є Sqlservr.exe, який запускається для екземпляра, вказаного у цей момент в командному рядку, наприклад для екземпляра за умовчанням MSSQLSERVER:

""C:\Program Files\Microsoft SQLServer\MSSQL.1\MSSQL\Binn\ sqlservr.exe" - sMSSQLSERVER

М ал. 3-3. Параметри конфігурації поверхні атаки

Примітка Незважаючи на те що деякі компоненти, такі як ядро бази даних, можна запускати з командного рядка, зазвичай це робиться за допомогою відповідної графічної утиліти адміністрування або команди NET START. При запуску ядра бази даних вручну вказуються певні параметри (детально описані в главі 4). Також їх можна встановити, двічі клацнувши мишачу службу SQL Server для екземпляра, з яким вимагається працювати, в компоненті панелі управління Services (Служби). У діалоговому вікні service_name (computer_name) - properties, де service_name - ім'я служби, що виводиться, computer_name - ім'я комп'ютера, клацніть кнопку Stop (Стоп) для зупинки служби (якщо вона працює). Введіть параметри в поле Start Parameters (Параметри запуску), потім клацніть кнопку Start (Пуск) для запуску служби. 15.02.

Analysis Services (Аналітичні служби) Запускається як служба з ім'ям SQL Server Analysis Services (instance_name), що виводиться, де instance_name - ім'я екземпляра. Виконуваним файлом для цієї служби є Msmdsrv.exe; крім того, служба використовує певний файл ініціалізації, вказаний в командному рядку при запуску, наприклад:

""C:\Program Files\Microsoft SQL Server\MSSQL.2\OLAP\bin\msmdsrv.exe" - s "C:\Program Files\Microsoft SQLServer\MSSQL.2\OLAP\Config\msmdsrv.ini"

Файл ініціалізації (Msmdsrv.ini) визначається за допомогою мови розмітки XML; не слід редагувати його вручну.

Reporting Services (Служби звітів) Запускається як служба з ім'ям Report Server (instance_name), що виводиться, де instance_ame - ім'я екземпляра. Виконуваним файлом для неї є ReportingServicesService.exe, що запускається набором командного рядка, подібного до наступної:

""C:\Program Files\Microsoft SQL Server\MSSQL.3\ReportingServices\ReportServer\bin\ ReportingServicesService.exe"

SQL Server Agent (Агент SQL Server) Запускається як служба з ім'ям SQL Server Agent (instance_name), що виводиться, де instance_name - ім'я екземпляра. Виконуваним файлом для неї є Sqlagent90.exe, який запускається для екземпляра, вказаного у цей момент в командному рядку, наприклад:

""C:\Program Files\Microsoft SQLServer\MSSQL.1\MSSQL\Binn\

SQLAGENT90.EXE" - i MSSQLSERVER

Full - Text Search (Повнотекстовий пошук) Запускається як служба з ім'ям SQL Server FullText Search (instance_name), що виводиться, де instance_name - ім'я екземпляра. Виконуваним файлом для неї є Msftesql.exe, який запускається для екземпляра, вказаного у цей момент в командному рядку, наприклад:

""C:\Program Files\Microsoft SQLServer\MSSQL.1\MSSQL\Binn\ msftesql.exe" - s: MSSQL.1 - f: MSSQLSERVER

Integration Services (Служби інтеграції) Запускається як служба з ім'ям SQL Server Integration Services, що виводиться. Виконуваним файлом для неї є Msdtssrvr.exe, який запускається набором командного рядка, подібного до наступної, :

""C:\Program Files\Microsoft SQL Server\90\DTS\Binn\MsDtsSrvr.exe"

SQL Server Browser (Оглядач SQL Server) Запускається як служба з ім'ям SQL Server Browser, що виводиться. Виконуваним файлом для неї є Sqlbrowser.exe, який запускається набором командного рядка, подібного до наступної, :

""C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe"

Для перегляду стану якої-небудь служби розкрийте вузол (вузли), відповідний компоненту екземпляра SQL Server, з яким працюватимете. При виборі компонента або служби відображуються детальні дані про них, включаючи такі:

  • Service Name (Ім'я служби) - внутрішнє ім'я служби, використовуване операційною системою;

  • Display Name (Ім'я, що виводиться) - ім'я служби, що відображується в інтерфейсі користувача;

  • Description (Опис) - опис компонента SQL Server 2005;

  • Startup Type (Тип запуску) - можливі типи запуску Automatic (Авто), Manual (Вручну) або Disabled (Відключено).

  • Service Status (Стан служби) - стан служби на час останнього оновлення, наприклад Running (Працює) або Stopped (Зупинена).

Усі служби SQL Server, які не використовуються в даний момент або не вимагаються у вашій конкретній конфігурації системи, мають бути налаштовані на запуск вручну і зупинені (якщо вони були запущені). Для зміни типу запуску служби в списку Startup, що розкривається, type (Тип запуску) виберіть потрібний і клацніть кнопку Apply (Застосувати). Щоб зупинити запущену службу, клацніть кнопку Stop (Стоп). Якщо ви хочете взагалі уникнути запуску служби, виберіть тип запуску Disabled (Відключено). Пам'ятайте, що служба SQL Server Browser (Оглядач SQL Server) надає клієнтським комп'ютерам інформацію про з'єднання. Тому, якщо клієнти підключаються до SQL Server видалено, ця служба в більшості випадків потрібна.

Примітка Для управління службами SQL Server також можна використовувати компонент панелі управління Services (Служби) і утиліту адміністрування SQL Server Configuration Manager. За допомогою компонента Services (Служби) управління службами SQL Server виробляється так само, як і будь-якими іншими службами. SQl Server Configuration Manager дозволяє настроїти обліковий запис, під яким служба запускається, тип запуску і стан служби. Якщо застосовно, можна також настроювати додаткові властивості, такі як Dump Directory (Каталог дампу), Error Reporting (Звіт про помилки) і Startup Parameters (Параметри запуску). Перевага утиліт адміністрування SQL Server 2005 Surface Area Configuration і SQL Server Configuration Manager над компонентом панелі управління Services (Служби) полягає в тому, що вони організовують інформацію в зручнішому виді і надають доступ тільки до служб SQL Server, а не до усіх служб операційної системи.

Налаштування параметрів з'єднань

З SQL Server можна встановлювати локальні, видалені і виділені з'єднання. Локальні з'єднання використовуються додатками, що працюють на тому ж комп'ютері, де запущений і SQL Server. Видалені з'єднання застосовуються клієнтами, що підключаються до сервера, додатками, запущеними на інших серверах, а також іншими серверами SQL. Виділені з'єднання є спеціальною функціональною можливістю, використовуваною адміністраторами для обслуговування SQL Server (і розглядати її треба саме як можливість, що настроюється, а не як тип допустимого з'єднання).

Примітка Налаштування за умовчанням для з'єднань залежать від налаштувань облікових записів, під якими служби запускаються, від встановлених компонентів, а також від інших параметрів установки (наприклад, оновлена вона або нова). Як правило, нова установка конфігурується тільки для використання локальних з'єднань. Але коли встановлені додаткові компоненти, такі як Reporting Services (Служби звітів) або Notification Services (Служби повідомлень), типова конфігурація включає і локальні, і видалені з'єднання.

Незважаючи на те що конфігурація, що дозволяє тільки локальні з'єднання, забезпечує набагато вищий рівень безпеки, використовувати SQL Server в такій конфігурації можна не завжди. Типовішою є інша ситуація, коли вимагається дозволити з'єднання, що входять, від видалених клієнтів і серверів. Вживані в цьому випадку для з'єднань мережеві протоколи можуть вплинути як на кількість використовуваних системних ресурсів, так і на відносну безпеку сервера. Для видалених з'єднань SQL Server 2005 використовує протоколи TCP/IP і Named Pipes (Іменовані канали). Але оскільки ці протоколи вимагають відкриття через брандмауер визначених, причому різних, портів, сервер можна настроїти на застосування лише якогось одного з них, зменшуючи тим самим поверхню атаки. Проте, перш ніж змінювати допустимі типи з'єднань, слід переконатися, що усі клієнти і додатки налагоджені для використання відповідної мережевої бібліотеки.

Для протоколу TCP/IP з'єднання з SQL Server може встановлюватися як за допомогою його стандартного варіанту, так і мережевої бібліотеки TCP/IP Sockets. Екземпляр SQL Server за умовчанням прослуховує порт TCP 1433; іменованим екземплярам порт привласнюється динамічно, якщо не визначено інакше. У разі клієнтських з'єднань використовується порт TCP 1434. Для іменованих каналів SQL Server використовує мережеву бібліотеку Named Pipes. Екземпляр SQL Server за умовчанням встановлює з'єднання через стандартну мережеву адресу \\.\pipe\sql\ query, іменований екземпляр - через адресу \\.\pipe\MSSQL$instance_name\sql\ query, де instance_name - ім'я екземпляра. Щоб використовувати іменовані канали необхідно відкрити через брандмауер певний діапазон портів - сервер прослуховує порт TCP 445, а пошук імен NetBIOS здійснюється через порт UDP 139. Широкомовні запити (b - node broadcasts) для дозволу імен NetBIOS вимагають відкриття портів UDP 137 і 138, або можна використовувати сервер WINS або файли LMHOSTS.

Примітка SQL Server 2005 також підтримує протоколи Shared Memory (спільно використовувана пам'ять) для локальних з'єднань і VIA (Virtual Interface Architecture - архітектура віртуального інтерфейсу) для локальних і видалених з'єднань. Протоколи NWLink IPX/SPX і AppleTalk більше не підтримуються.

Щоб перевірити або змінити налаштування з'єднань, виконаєте наступну послідовність дій.

Запустите утиліту SQL Server 2005 Surface Area Configuration, потім клацніть посилання Surface Area Configuration For Services And Connections (Налаштування поверхні атаки для служб і з'єднань), що знаходиться в головному вікні.

П римітку SQL Server 2005 Surface Area Configuration визначає конфігурацію усіх запущених екземплярів SQL Server 2005 на сервері, з яким встановлено з'єднання. Якщо ви зупинили екземпляр SQL Server, то необхідно знову запустити його, щоб дістати можливість управляти за допомогою цієї утиліти. Можливо, потрібно буде закрити поточне вікно і відкрити його знову.

У діалоговому вікні Surface Area Configuration For Services And Connections (Налаштування поверхні атаки для служб і підключень) виберіть вкладку View By Instance (Перегляд по екземплярах) і розкрийте вузол екземпляра SQL Server, з яким працюватимете, наприклад екземпляр за умовчанням MSSQLSERVER.

Розкрийте вузол Database Engine (Ядро бази даних) і потім виберіть вузол Remote Connections (Видалені з'єднання), як показано на мал. 3-4.

Мал. 3-4. Параметри налаштування локальних і видалених з'єднань

Якщо не потрібно підключення до сервера видалених клієнтів, додатків і інших серверів, виберіть положення перемикача Local Connections Only (Тільки локальні з'єднання). Інакше виберіть положення Local And Remote Connections (Локальні і видалені з'єднання) і вкажіть дозволені типи з'єднань. Вам будуть запропоновані наступні варіанти:

Using TCP/IP Only (Використовувати тільки TCP/IP);

Using Named Pipes Only (Використовувати тільки іменовані канали);

Using both TCP/IP and Named Pipes (Використовувати TCP/IP і іменовані канали).

Клацніть кнопку Apply (Застосувати).25.02

Управління доступом до функціональних можливостей компонентів

Для зменшення поверхні атаки і поліпшення безпеки сервера слід включити тільки ті функціональні можливості, які дійсно потрібно для роботи користувачів і додатків. Це обмежить набір способів для зловмисного використання сервера і закриє шляхи можливої атаки. Хоча конфігурацією поверхні атаки можна управляти через налаштування параметрів в SQL Server Management Studio і через процедури, що зберігаються, найпростішим способом все ж буде використання утиліти адміністрування SQL Server 2005 Surface Area Configuration. Вона дає можливість управляти усіма запущеними екземплярами Database Engine (Ядро бази даних), Analysis Services (Аналітичні служби) і Reporting Services (Служби звітів).

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

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

Запустите утиліту SQL Server 2005 Surface Area Configuration, потім клацніть посилання Surface Area Configuration For Features (Налаштування поверхні атаки для функціональних можливостей), яке знаходиться в головному вікні.

У діалоговому вікні Surface Area Configuration For Features (Налаштування поверхні атаки для функціональних можливостей) виберіть вкладку View By Instance (Перегляд по екземплярах) і розкрийте вузол екземпляра SQL Server, з яким працюватимете, наприклад екземпляр за умовчанням MSSQLSERVER.

У таблиці. 3-1 перераховані функціональні можливості компонентів, визначальні поверхню атаки, якими можна управляти для Database Engine (Ядро бази даних), Analysis Services (Аналітичні служби) і Reporting Services (Служби звітів). Виберіть можливість, яку необхідно настроїти, як показано на мал. 3-5.

Включите можливість, встановивши відповідний прапорець. Або, при необхідності, відключите її, знявши прапорець.

Клацніть кнопку Apply (Застосувати).

Мал. 3-5. Прапорець для включення або виключення функціональної можливості, що визначає поверхню атаки

Таблиця. 3-1. Функціональні можливості компонентів, визначальні поверхню атаки

Функціональна можливість

Database Engine (Ядро бази даних)

Ad Hoc Remote Queries (Видалені нерегламентовані запити)

CLR Integration (Інтеграція із загальномовним виконуючим середовищем)

Database Mail

Опис

Функції openrowset() і opendatasource() можуть використовувати довільні підключення для роботи з видаленими джерелами даних, без спеціально налагоджених адміністратором пов'язаних або видалених серверів. Якщо додатки або сценарії використовують вказані функції, їх слід дозволити. Інакше ця можливість має бути відключена

Інтеграція із загальномовним виконуючим середовищем дозволяє писати процедури, що зберігаються, тригери, призначені для користувача типи даних і призначені для користувача функції, використовуючи VB.NET, C# і будь-які інші мови, підтримувані .NET Framework. Якщо додатки або сценарії використовують мови .NET Framework, включите цю можливість. Інакше її слід відключити

Компонент Database Mail прийшов на зміну службі SQL Mail. Для відправки повідомлень електронної пошти, що використовують протокол SMTP, рекомендується саме він. Включите цю можливість, коли необхідно, щоб додатки і сценарії використовували процедуру sp_send_dbmail, що зберігалася, для відправки повідомлень електронної пошти (для цього слід створити БД поштового сервера, виконавши на сервері сценарій %ProgramFiles%\ Microsoft SQL Server\MSSQL.1\MSSQL\Install\Install_ DBMail_Upgrade.sql, і необхідні поштові профілі БД). Інакше ця можливість має бути відключена

Функціональна можливість DAC

((виділене з'єднання адміністратора)

Native XML Web Services (Власні веб-служби XML)

OLE Automation (Автоматизація OLE)

Service Broker (Брокер служб)

Опис

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

За допомогою Native XML Web Services можна дістати доступ до SQL Server через протокол HTTP, використовуючи повідомлення SOAP (simple object access protocol*, простий протокол доступу до об'єктів). Повідомлення SOAP містять текстові команди, які форматуються за допомогою XML. Якщо планується використовувати SOAP для обміну даними і для цього були налагоджені необхідні кінцеві точки HTTP, можна встановити стан кожної кінцевої точки як Started (Запущена), Stopped (Зупинена) або Disabled (Відключена). Якщо кінцеві точки HTTP не були визначені, ця можливість недоступна для налаштування і управління. Слід зазначити, що веб-служба Report Server (Сервер звітів), компонент ядра бази даних SQL Server Service Broker (Брокер служб SQL Server) і компоненти, що здійснюють дзеркальне відображення БД, використовують Native Web Services (Власні веб-служби XML), проте настроюються окремо

Автоматизація OLE дозволяє в пакетах інструкцій Transact - SQL, процедурах, що зберігаються, і тригерах звертатися до об'єктів SQL DMO (SQL Distributed Management Objects, розподілені об'єкти управління SQL) і призначеним для користувача об'єктам автоматизації OLE. Включите цю можливість, якщо необхідно використовувати автоматизацію OLE, у тому числі розширені процедури sp_OACreate, що зберігаються, sp_OADestroy, sp_OAGetErrorInfo, sp_OAGetProperty, sp_OAMethod, sp_OASetProperty і sp_OAStop.

Інакше ця можливість має бути відключена

Service Broker (Брокер служб) забезпечує для ядра бази даних організацію черг повідомлень, обмін повідомленнями і використовується додатками для зв'язку між екземплярами SQL Server. Якщо при цьому визначені необхідні кінцеві точки HTTP, стан кожної з них можна настроїти як Started (Запущена), Stopped (Зупинена) або Disabled (Відключена).

Якщо ж кінцеві точки HTTP не були визначені, ця можливість недоступна для налаштування і управління

Функціональна можливість

SQL Mail

Web Assistant xp_cmdshell

Analysis Services (Аналітичні служби)

Ad Hoc Data Mining Queries (Нерегламентовані запити для пошуку знань в даних)

Опис

Служба SQL Mail використовується для відправки повідомлень електронної пошти з додатків, що підтримують протокол SMTP, які були написані для попередніх версій SQL Server. Якщо необхідно, щоб успадковані застосування і сценарії використовували процедуру xp_sendmail, що зберігалася, для відправки повідомлень електронної пошти з SQL Server, включите цю можливість. Інакше вона має бути відключена

У попередніх версіях SQL Server процедури утиліти Web Assistant Wizard, що зберігаються, могли бути використані для генерування файлів HTML на підставі даних SQL Server. У SQL Server 2005 Reporting Services (Служби звітів) прийшли на зміну цим процедурам, що зберігалися, надаючи ширші функціональні можливості і параметри налаштування. Якщо необхідно підтримувати успадковані застосування або сценарії, які використовують процедури Web Assistant Wizard, що зберігаються, включите цю можливість.

Інакше вона має бути відключена

Процедура xp_cmdshell, що зберігається, виконує рядки команд, використовуючи командний процесор операційної системи, і повертає результати у вигляді текстових рядків. Коли необхідно, щоб додатки і сценарії запускали команди операційної системи, треба включити цю можливість. За умовчанням тільки члени вбудованої ролі сервера sysadmin можуть виконувати процедуру xp_cmdshel, що зберігається, але можна дозволити виконувати її і іншим користувачам. Для користувачів, що є членами ролі сервера sysadmin, процедура xp_cmdshell, що зберігається, виконується в контексті безпеки самої служби SQL Server. Для інших користувачів xp_cmdshell виконуватиметься в контексті безпеки представницького облікового запису SQL Server Agent (яку можна визначити, використовуючи процедуру xp_sqlagent_proxy_account, що зберігається). Якщо представницький обліковий запис недоступний, запуск xp_cmdshell завершиться невдало)

Функція openrowset() мови DMX (Data Mining Extensions - розширення мови SQL для пошуку знань в даних) встановлює з'єднання з об'єктом джерела даних, використовуючи ім'я постачальника даних і рядок з'єднання. Це дозволяє встановлювати довільні з'єднання до видалених джерел даних і не вимагає від адміністратора спеціально настроювати пов'язані або видалені сервери. Включите цю можливість, якщо додатки або сценарії використовують функцію openrowset() для операцій пошуку знань в даних. Інакше ця можливість має бути відключена, що не дозволить додаткам передавати ім'я постачальника і рядки з'єднання при використанні функції openrowset()

Функціональна можливість

Anonymous Connections (Анонімні з'єднання)

Linked Objects (Пов'язані об'єкти)

User - defined Functions

(Призначені для користувача функції)

Reporting Services (Служби звітів)

Scheduled Events and Report Delivery (Події і доставка звітів за розкладом)

HTTP and Web Service Requests (Запити HTTP і веб-служб)

Опис

Використовуючи анонімні з'єднання, неаутентифициро- ванні користувачі можуть встановити з'єднання з Analysis Services (Аналітичні служби). Включите цю можливість, якщо додатки і сценарії вимагають доступу неаутентифицированных користувачів. Інакше відключите її

У Analysis Services (Аналітичні служби) можна використовувати пов'язані об'єкти для об'єднання вимірів і груп заходів між серверами. Якщо необхідно, щоб Analysis Server (Аналітичний сервер) зв'язував об'єкти з інших екземплярів, встановите прапорець Enable links to other instances (Дозволити з'єднання з іншими екземплярами). Коли треба, щоб інші екземпляри зв'язували об'єкти з вашого Analysis Server (Аналітичний сервер), встановите прапорець Enable links from other instances (Дозволити з'єднання з інших екземплярів). Якщо ж зв'язування вимірів і груп заходів не використовується, зніміть обидва прапорці для відключення цієї можливості

Analysis Services (Аналітичні служби) інтегровані з .NET Framework і завантажують складки, що містять призначені для користувача функції. Ці функції можуть бути написані з використанням об'єктів CLR або COM. Об'єкти і функції CLR мають інтегровану модель безпеки. Об'єкти COM не використовують таку модель, отже, вони менш безпечні. Включите цю можливість, якщо додатки і сценарії використовують призначені для користувача функції COM. Інакше відключите її, щоб дозволити тільки функції CLR

У Report Services (Служби звітів) використовуються звіти на вимогу і звіти за розкладом. Зазвичай при установці Reporting Services (Служби звітів) обидва типи звітів включено. Якщо звіти за розкладом не використовуються, можна відключити цю можливість, знявши прапорець Enable Scheduled Events And Report Delivery (Включити події і доставку звітів за розкладом)

Для зв'язку компонентів Report Services (Служби звітів) використовують обмін повідомленнями SOAP через протокол HTTP. З його допомогою також виконується обробка запитів доступу до адрес URL (Uniform Resource Locator - однаковий визначник місця розташування ресурсу). Ці можливості управляються веб-службою Report Server (Сервер звітів) і дозволяють працювати з Reporting Services (Служби звітів), використовуючи такі утиліти, як Report Manager (Диспетчер звітів)

Report Builder (Конструктор звітів) і SQL Server Management Studio. Зазвичай при установці Reporting Services (Служби звітів) обробка запитів HTTP і веб-служб включена. Якщо Reporting Services (Служби звітів) не використовуються, відключите цю можливість, знявши прапорець Enable Web Service And URL Access (Дозволити доступ веб-служб і доступ до адрес URL)