Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: SQL Server
Database SQL di Azure
Istanza gestita di SQL di Azure
Azure Synapse Analytics
Piattaforma di strumenti analitici (PDW)
Questo articolo illustra come concedere autorizzazioni per una stored procedure in SQL Server usando SQL Server Management Studio o Transact-SQL. Le autorizzazioni possono essere concesse a un utente esistente, a un ruolo del database o a un ruolo applicativo nel database.
Limitazioni e restrizioni
- Non è possibile utilizzare SQL Server Management Studio per concedere autorizzazioni per procedure di sistema o funzioni di sistema. Occorre invece utilizzare GRANT - autorizzazioni per oggetti (Transact-SQL).
Autorizzazioni
L'utente che concede le autorizzazioni (o l'entità specificata con l'opzione AS
) deve disporre del permesso stesso con GRANT OPTION
oppure di un'autorizzazione di livello superiore che implichi il permesso che viene concesso. È richiesta l'autorizzazione ALTER
per lo schema a cui appartiene la procedura oppure l'autorizzazione CONTROL
per la procedura. Per altre informazioni, vedere GRANT - autorizzazioni per oggetti.
Usare SQL Server Management Studio
Per concedere autorizzazioni per una stored procedure
In Esplora oggetti, connettiti a un'istanza del Motore di Database ed espandi quell'istanza.
Espandi Database, espandi il database in cui appartiene la procedura, quindi espandi Programmabilità.
Espandere Stored procedure, fare clic con il pulsante destro del mouse sulla procedura per cui concedere autorizzazioni e quindi scegliere Proprietà.
Da Proprietà stored procedure, selezionare la pagina Autorizzazioni.
Per concedere autorizzazioni a un utente, a un ruolo del database o a un ruolo applicazione, selezionare Cerca.
In Selezione utenti o ruoli fare clic su Tipi di oggetti per aggiungere o cancellare gli utenti e i ruoli desiderati.
Fare clic su Sfoglia per visualizzare l'elenco di utenti o ruoli. Selezionare gli utenti o i ruoli a cui concedere le autorizzazioni.
Nella griglia Autorizzazioni esplicite selezionare le autorizzazioni da concedere all'utente o al ruolo specificato. Per una descrizione delle autorizzazioni, vedere Autorizzazioni (Motore di database).
Selezionando Concedi al beneficiario verrà assegnata l'autorizzazione specificata. Se si seleziona Autorizza alla concessione di autorizzazioni al beneficiario verrà inoltre consentito di concedere l'autorizzazione specificata ad altre entità.
Usare Transact-SQL
Per concedere autorizzazioni per una stored procedure
Connetti al motore di database.
Nella barra Standard selezionare Nuova query.
Copiare e incollare l'esempio seguente nella finestra di query e selezionare Esegui. Nell'esempio, l'autorizzazione
EXECUTE
viene concessa per la stored procedureHumanResources.uspUpdateEmployeeHireInfo
a un ruolo applicativo denominatoRecruiting11
.
USE AdventureWorks2022;
GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
TO Recruiting11;
GO
Per concedere autorizzazioni per tutte le stored procedure in uno schema
Connetti al motore del database.
Nella barra Standard selezionare Nuova query.
Copiare e incollare l'esempio seguente nella finestra di query e selezionare Esegui. In questo esempio viene concessa l'autorizzazione
EXECUTE
per tutte le stored procedure esistenti o che esisteranno nello schemaHumanResources
, a un ruolo applicativo denominatoRecruiting11
.
USE AdventureWorks2022;
GRANT EXECUTE ON SCHEMA::HumanResources
TO Recruiting11;
GO