Предоставление разрешений на хранимую процедуру

В этом разделе описывается, как предоставить разрешения на хранимую процедуру в SQL Server 2012, используя среду Среда SQL Server Management Studio или Transact-SQL. Разрешения можно предоставить существующему пользователю, роли базы данных или роли приложения в базе данных.

В этом разделе

  • Перед началом работы выполните следующие действия.

    Ограничения

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

  • Для предоставления разрешений на хранимую процедуру используется:

    Среда SQL Server Management Studio

    Transact-SQL

Перед началом работы

Ограничения

  • Нельзя использовать среду Среда SQL Server Management Studio для предоставления разрешений на системные процедуры или системные функции. Вместо этого используйте Разрешения объекта GRANT.

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

Разрешения

Объект, предоставляющий разрешение (или участник, указанный параметром AS), должен иметь либо само разрешение с параметром GRANT OPTION, либо разрешение более высокого уровня, которое неявно включает предоставляемое разрешение. Необходимо разрешение ALTER на схему, которой принадлежит процедура, или разрешение CONTROL на процедуру. Дополнительные сведения см. в разделе GRANT, предоставление разрешений на объект (Transact-SQL).

Значок стрелки, используемый со ссылкой «В начало»[В начало]

Использование среды SQL Server Management Studio

Предоставление разрешений на хранимую процедуру

  1. В обозревателе объектов подключитесь к экземпляру компонента Компонент Database Engine и разверните его.

  2. Последовательно разверните узел Базы данных, базу данных, которой принадлежит процедура, и узел Программирование.

  3. Разверните Хранимые процедуры, щелкните правой кнопкой мыши на процедуре для предоставления разрешений и выберите Свойства.

  4. В пункте Свойства хранимой процедуры выберите страницу Разрешения.

  5. Для предоставления разрешений пользователю, роли базы данных или роли приложения нажмите кнопку Поиск.

  6. В пункте Выбрать пользователей или ролей нажмите Типы объектов для необходимого добавления или исключения пользователей и ролей.

  7. Нажмите кнопку Обзор, чтобы показать список пользователей или ролей. Выберите пользователей или роли, которым следует предоставить разрешения.

  8. В сетке Явно указанные разрешения выберите разрешения для предоставления определенному пользователю или роли. Описание разрешений см. в разделе Разрешения (компонент Database Engine).

Выбор Предоставить означает, что получателю разрешения предоставляется указанное разрешение. Выбор параметра Право передачи означает, что получатель разрешения имеет возможность предоставить указанное разрешение другим участникам.

Значок стрелки, используемый со ссылкой «В начало»[В начало]

Использование Transact-SQL

Предоставление разрешений на хранимую процедуру

  1. Установите соединение с компонентом Компонент Database Engine.

  2. На стандартной панели выберите пункт Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере предоставляется разрешение EXECUTE на хранимую процедуру HumanResources.uspUpdateEmployeeHireInfo роли приложения с именем Recruiting11.

USE AdventureWorks2012; 
GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
    TO Recruiting11;
GO

Значок стрелки, используемый со ссылкой «В начало»[В начало]

См. также

Справочник

sys.fn_builtin_permissions (Transact-SQL)

GRANT, предоставление разрешений на объект (Transact-SQL)

Основные понятия

Создание хранимой процедуры

Изменение хранимой процедуры

Удаление хранимой процедуры

Изменение имени хранимой процедуры