Concedere autorizzazioni per una stored procedureGrant Permissions on a Stored Procedure

In questo argomento viene illustrato come concedere autorizzazioni per una stored procedure in SQL Server 2017SQL Server 2017 utilizzando SQL Server Management StudioSQL Server Management Studio o Transact-SQLTransact-SQL.This topic describes how to grant permissions on a stored procedure in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. Le autorizzazioni possono essere concesse a un utente, a un ruolo del database o a un ruolo applicazione nel database.Permissions can be granted to an existing user, database role, or application role in the database.

Contenuto dell'argomentoIn This Topic

Prima di iniziare Before You Begin

Limitazioni e restrizioni Limitations and Restrictions

  • Non è possibile utilizzare SQL Server Management StudioSQL Server Management Studio per concedere autorizzazioni per stored procedure o funzioni di sistema.You cannot use SQL Server Management StudioSQL Server Management Studio to grant permissions on system procedures or system functions. Utilizzare invece GRANT - autorizzazioni per oggetti .Use GRANT Object Permissions instead.

Sicurezza Security

Autorizzazioni Permissions

L'utente che concede le autorizzazioni (o l'entità specificata con l'opzione AS) deve disporre della relativa autorizzazione con GRANT OPTION oppure di un'autorizzazione di livello superiore che include l'autorizzazione che viene concessa.The grantor (or the principal specified with the AS option) must have either the permission itself with GRANT OPTION, or a higher permission that implies the permission being granted. È richiesta l'autorizzazione ALTER per lo schema a cui appartiene la stored procedure oppure l'autorizzazione CONTROL per la stored procedure.Requires ALTER permission on the schema to which the procedure belongs, or CONTROL permission on the procedure. Per altre informazioni, vedere GRANT - autorizzazioni per oggetti (Transact-SQL).For more information, see GRANT Object Permissions (Transact-SQL).

Utilizzo di SQL Server Management Studio Using SQL Server Management Studio

Per concedere autorizzazioni per una stored procedureTo grant permissions on a stored procedure

  1. In Esplora oggetti connettersi a un'istanza del Motore di databaseDatabase Engine e quindi espanderla.In Object Explorer, connect to an instance of Motore di databaseDatabase Engine and then expand that instance.

  2. Espandere Database, espandere il database a cui appartiene la stored procedure, quindi espandere Programmabilità.Expand Databases, expand the database in which the procedure belongs, and then expand Programmability.

  3. Espandere Stored procedure, fare clic con il pulsante destro del mouse sulla procedura per cui concedere autorizzazioni e quindi scegliere Proprietà.Expand Stored Procedures, right-click the procedure to grant permissions on, and then click Properties.

  4. Da Proprietà stored procedureselezionare la pagina Autorizzazioni .From Stored Procedure Properties, select the Permissions page.

  5. Per concedere autorizzazioni a un utente, a un ruolo del database o a un ruolo applicazione, fare clic su Cerca.To grant permissions to a user, database role, or application role, click Search.

  6. In Selezione utenti o ruolifare clic su Tipi di oggetti per aggiungere o cancellare gli utenti e i ruoli desiderati.In Select Users or Roles, click Object Types to add or clear the users and roles you want.

  7. Fare clic su Sfoglia per visualizzare l'elenco di utenti o ruoli.Click Browse to display the list of users or roles. Selezionare gli utenti o i ruoli a cui concedere le autorizzazioni.Select the users or roles to whom permissions should be granted.

  8. Nella griglia Autorizzazioni esplicite selezionare le autorizzazioni da concedere all'utente o al ruolo specificato.In the Explicit Permissions grid, select the permissions to grant to the specified user or role. Per una descrizione delle autorizzazioni, vedere Autorizzazioni (Motore di database).For a description of the permissions, see Permissions (Database Engine).

    Selezionando Concedi al beneficiario verrà assegnata l'autorizzazione specificata.Selecting Grant indicates the grantee will be given the specified permission. Se si seleziona Autorizza alla concessione di autorizzazioni al beneficiario verrà inoltre consentito di concedere l'autorizzazione specificata ad altre entità.Selecting Grant With indicates that the grantee will also be able to grant the specified permission to other principals.

Utilizzo di Transact-SQL Using Transact-SQL

Per concedere autorizzazioni per una stored procedureTo grant permissions on a stored procedure

  1. Connettersi al Motore di databaseDatabase Engine.Connect to the Motore di databaseDatabase Engine.

  2. Dalla barra Standard fare clic su Nuova query.From the Standard bar, click New Query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.Copy and paste the following example into the query window and click Execute. Nell'esempio viene concessa l'autorizzazione EXECUTE per la stored procedure HumanResources.uspUpdateEmployeeHireInfo a un ruolo applicazione denominato Recruiting11.This example grants EXECUTE permission on the stored procedure HumanResources.uspUpdateEmployeeHireInfo to an application role named Recruiting11.

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

Vedere ancheSee Also

sys.fn_builtin_permissions (Transact-SQL) sys.fn_builtin_permissions (Transact-SQL)
GRANT - autorizzazioni per oggetti (Transact-SQL) GRANT Object Permissions (Transact-SQL)
Creazione di una stored procedure Create a Stored Procedure
Modificare una stored procedure Modify a Stored Procedure
Eliminare una stored procedure Delete a Stored Procedure
Rinominare una stored procedure Rename a Stored Procedure