Compartir a través de


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

  1. 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)

  2. Expanda la carpeta Programación .

  3. Expanda la carpeta Procedimientos almacenados .

  4. Haga clic con el botón derecho en un procedimiento almacenado y seleccione Propiedades.

  5. 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.

  6. Cuando termine, seleccione Aceptar.

Uso de Transact-SQL

Conceder permiso a una entidad de seguridad

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.

  2. En la barra Estándar, seleccione Nueva consulta.

  3. 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 denominado Recruiting11.

    -- 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.