Conceder un permiso a una entidad de seguridad
Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Base de datos SQL de Microsoft Fabric
En este artículo se describe cómo conceder permiso a una entidad de seguridad en SQL Server mediante SQL Server Management Studio o Transact-SQL.
Seguridad
El otorgante de permisos (o la entidad de seguridad especificada con la opción AS) debe tener asignado el mismo permiso con GRANT OPTION o un permiso superior que implique el permiso que se va a conceder.
Uso de SQL Server Management Studio
Conceder permiso a una entidad de seguridad
En el Explorador de objetos, expanda la base de datos que contiene el objeto al que desea conceder permisos.
Nota:
Estos pasos abordan específicamente la concesión de permisos a un procedimiento almacenado, pero puede utilizar pasos similares para agregar permisos a tablas, vistas, funciones y ensamblados, así como a otros elementos protegibles. Para más información, vea GRANT (Transact-SQL)
Expanda la carpeta Programación .
Expanda la carpeta Procedimientos almacenados .
Haga clic con el botón derecho en un procedimiento almacenado y seleccione Propiedades.
En el cuadro de diálogo Propiedades del procedimiento almacenado, seleccione la página Permisos . Utilice esta página para agregar usuarios o roles al procedimiento almacenado y especificar los permisos que los usuarios o los roles tienen.
Cuando termine, seleccione Aceptar.
Uso de Transact-SQL
Conceder permiso a una entidad de seguridad
En el Explorador de objetos, conéctese a una instancia del 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 el ejemplo siguiente se concede el permiso EXECUTE al procedimiento
HumanResources.uspUpdateEmployeeHireInfo
almacenado a un rol de aplicación denominadoRecruiting11
.-- Grants EXECUTE permission on stored procedure HumanResources.uspUpdateEmployeeHireInfo to an application role called Recruiting11. USE AdventureWorks2022; GO GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo TO Recruiting11; GO
Para obtener más información, vea GRANT (Transact-SQL) y permisos de objeto GRANT (Transact-SQL).
Limitaciones
Tenga en cuenta las siguientes prácticas recomendadas que pueden facilitar la administración de permisos.
Conceda permiso a los roles, en lugar de a inicios de sesión o usuarios. Cuando un individuo es reemplazado por otro, quite del rol al individuo que se va y agregue al nuevo. Los permisos que puedan estar asociados al rol estarán disponibles automáticamente para el nuevo individuo. Si varias personas de una organización requieren los mismos permisos, al agregar cada uno de ellos al rol les concederá los mismos permisos.
Configure elementos protegibles similares (tablas, vistas y procedimientos) para que sean propiedad de un esquema y, a continuación, conceda permisos al esquema. Por ejemplo, el esquema de nóminas puede poseer varias tablas, vistas y procedimientos almacenados. Al conceder acceso al esquema, todos los permisos necesarios para realizar la función de nómina se pueden conceder al mismo tiempo. Para obtener más información acerca de a qué elementos protegibles pueden concederse permisos, vea Securables.
En la base de datos SQL de Microsoft Fabric, el identificador de Entra de Microsoft para los usuarios de la base de datos es el único método de autenticación admitido. Los roles y permisos de nivel de servidor no están disponibles, solo a nivel de base de datos. Para obtener más información, consulte Autorización en SQL Database en Microsoft Fabric.