Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Aplica a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistema de Plataforma de Analítica (PDW)
Base de datos SQL en Microsoft Fabric
En este artículo se describe cómo conceder permisos en un procedimiento almacenado 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.
Limitaciones
- No se puede usar SQL Server Management Studio para conceder permisos para procedimientos del sistema o funciones del sistema. Use GRANT permisos de objeto (Transact-SQL) en su lugar.
Permisos
El otorgante del permiso (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 object permissions (Transact-SQL).
Uso de SQL Server Management Studio
Concesión de permisos en un procedimiento almacenado
En el Explorador de objetos, conéctese a una instancia del motor de base de datos y expanda esa instancia.
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 derecho en el procedimiento en el que quiera conceder permisos y, luego, seleccione 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, seleccione Buscar.
En Seleccionar usuarios o roles, seleccione Tipos de objeto para agregar o borrar los usuarios y los roles que quiera.
Seleccione 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.
Uso de Transact-SQL
Concesión de permisos en un procedimiento almacenado
Conéctese con el Motor de base de datos.
En la barra de herramientas, seleccione Nueva consulta.
Copie y pegue el ejemplo siguiente en la ventana de consulta y seleccione Ejecutar. En este ejemplo se concede el permiso
EXECUTEpara el procedimiento almacenadoHumanResources.uspUpdateEmployeeHireInfoa un rol de aplicación denominadoRecruiting11.
USE AdventureWorks2022;
GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
TO Recruiting11;
GO
Concesión de permisos en todos los procedimientos almacenados de un esquema
Conéctese con el Motor de base de datos.
En la barra Estándar, seleccione Nueva consulta.
Copie y pegue el ejemplo siguiente en la ventana de consulta y seleccione Ejecutar. En este ejemplo se concede el permiso
EXECUTEen todos los procedimientos almacenados que existen, o existirán, en el esquemaHumanResources, a un rol de aplicación denominadoRecruiting11.
USE AdventureWorks2022;
GRANT EXECUTE ON SCHEMA::HumanResources
TO Recruiting11;
GO