Conceder permisos para un procedimiento almacenado
En este tema se describe cómo conceder permisos para un procedimiento almacenado en SQL Server 2012 mediante SQL Server Management Studio o Transact-SQL. Se pueden conceder permisos a un usuario, un rol de base de datos o un rol de aplicación existentes en la base de datos.
En este tema
Antes de empezar:
Limitaciones y restricciones
Seguridad
Para conceder permisos para un procedimiento almacenado, usando:
SQL Server Management Studio
Transact-SQL
Antes de empezar
Limitaciones y restricciones
- No se puede usar SQL Server Management Studio para conceder permisos para procedimientos del sistema o funciones del sistema. En su lugar, use GRANT (permisos de objeto de Transact-SQL).
Seguridad
Permisos
El otorgante de permisos (o la entidad de seguridad especificada con la opción AS) debe tener el permiso con GRANT OPTION o un permiso superior que implique el permiso que se va a conceder. Requiere el permiso ALTER en el esquema al que pertenece el procedimiento o el permiso CONTROL en el procedimiento. Para obtener más información, vea GRANT (permisos de objeto de Transact-SQL).
[Arriba]
Usar SQL Server Management Studio
Para conceder permisos para un procedimiento almacenado
En el Explorador de objetos, conéctese a una instancia del Motor de base de datos y expándala.
Expanda Bases de datos, expanda la base de datos a la que pertenece el procedimiento y, a continuación, expanda Programación.
Expanda Procedimientos almacenados, haga clic con el botón secundario en el procedimiento sobre el que desea conceder permisos y, a continuación, haga clic en Propiedades.
En Propiedades del procedimiento almacenado, seleccione la página Permisos.
Para conceder permisos a un usuario, un rol de base de datos o un rol de aplicación, haga clic en Buscar.
En Seleccionar usuarios o roles, haga clic en Tipos de objeto para agregar o borrar los usuarios y los roles que desee.
Haga clic en Examinar para mostrar la lista de usuarios o de roles. Seleccione los usuarios o los roles a los que deben concederse los permisos.
En la cuadrícula Permisos explícitos, seleccione los permisos que desea conceder al rol o al usuario especificados. Para obtener una descripción de los permisos, vea Permisos (motor de base de datos).
Al seleccionar Conceder, se indica que se concederá el permiso especificado al receptor. Al seleccionar Grant With, se indica que el receptor también podrá conceder el permiso especificado a otras entidades de seguridad.
[Arriba]
Usar Transact-SQL
Para conceder permisos para un procedimiento almacenado
Conéctese con el Motor de base de datos.
En la barra Estándar, haga clic en Nueva consulta.
Copie y pegue el ejemplo siguiente en la ventana de consulta y haga clic en Ejecutar. En este ejemplo se concede el permiso EXECUTE para el procedimiento almacenado HumanResources.uspUpdateEmployeeHireInfo a un rol de aplicación denominado Recruiting11.
USE AdventureWorks2012;
GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
TO Recruiting11;
GO
[Arriba]
Vea también
Referencia
sys.fn_builtin_permissions (Transact-SQL)
GRANT (permisos de objeto de Transact-SQL)
Conceptos
Crear un procedimiento almacenado
Modificar un procedimiento almacenado