XML Web-службы в Microsoft SQL Server 2005 - Права доступа

ОГЛАВЛЕНИЕ

 

Права доступа

Глубоко продуманная система разграничения прав доступа в Yukon позволяет очень гибко настраивать уровень безопасности для любого объекта базы данных, в том числе и конечных точек. Для конечных точек можно настраивать следующие права доступа.

  • Создание конечных точек для заданной на сервере учетной записи
  • Изменение (alter) всех или какой-либо конкретной конечной точки для учетной записи. Право на изменение дает также право на просмотр информации о конечной точке через представления sys.endpoints, sys.http_endpoints и т. д., а также просмотр информации о Web-методах конечной точки.
  • Соединение с конечной точкой. Соединение дает право на собственно выполнение методов конечной точки, а также на просмотр wsdl документа данной Web-службы.
  • Возможность стать владельцем конечной точки.
  • Возможность управлять (control) конечной точкой. Это как бы объединяющее право, заключающее в себе права на изменение, соединение, возможность стать владельцем конечной точки, а также права на удаление (drop).

Владелец (owner) конечной точки и пользователь в роли sysadmin имеют все права на конечную точку.

Синтаксис команды разграничения прав доступа (в сокращенном варианте) таков:

{GRANT/DENY/REVOKE}
{CREATE/ALTER ANY/ALTER ON/CONNECT ON/TAKE OWNERSHIP ON}
ENDPOINT TO <login>

  • GRANT/DENY/REVOKE — предоставление, запрещение или отзыв права соответственно.
  • CREATE — право на создание конечной точки.
  • ALTER ANY — право на изменение любой конечной точки.
  • ALTER ON — право на изменение конкретной точки.
  • CONNECT ON — право на соединение.
  • TAKE OWNERSHIP ON — право быть владельцем конечной точки.

Приведу пример предоставления права на изменение параметров конечной точки HelloFromYukon для учетной записи test:

grant alter on endpoint::HelloFromYukon to test

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