sp_unsetapprole (Transact-SQL)
Si applica a: SQL Server (tutte le versioni supportate)
Disattiva un ruolo applicazione e ripristina il contesto di sicurezza precedente.
Convenzioni della sintassi Transact-SQL
Sintassi
sp_unsetapprole @cookie
Argomenti
@Cookie
Specifica il cookie creato al momento dell'attivazione del ruolo applicazione. Il cookie viene creato da sp_setapprole (Transact-SQL). varbinary(8000).
Nota
Il parametro OUTPUT del cookie per sp_setapprole è attualmente documentato come varbinary(8000) che rappresenta la lunghezza massima corretta. Tuttavia, l'implementazione corrente restituisce varbinary(50) . Le applicazioni devono continuare a riservare varbinary(8000) in modo che l'applicazione continui a funzionare correttamente se le dimensioni restituite dal cookie aumentano in una versione futura.
Valori del codice restituito
0 (esito positivo) o 1 (esito negativo)
Commenti
Dopo l'attivazione di un ruolo applicazione tramite sp_setapprole, il ruolo rimane attivo fino a quando l'utente non si disconnette dal server o non esegue sp_unsetapprole.
Per una panoramica dei ruoli applicazione, vedere Ruoli applicazione.
Autorizzazioni
Richiede l'appartenenza a public e la conoscenza del cookie salvato quando è stato attivato il ruolo applicazione.
Esempio
Attivazione di un ruolo applicazione con un cookie e ripristino del contesto precedente
Nell'esempio seguente viene attivato il ruolo applicazione Sales11
con la password fdsd896#gfdbfdkjgh700mM
e viene creato un cookie. Nell'esempio viene restituito il nome dell'utente corrente, quindi viene ripristinato il contesto originale eseguendo sp_unsetapprole.
DECLARE @cookie varbinary(8000);
EXEC sp_setapprole 'Sales11', 'fdsd896#gfdbfdkjgh700mM'
, @fCreateCookie = true, @cookie = @cookie OUTPUT;
-- The application role is now active.
SELECT USER_NAME();
-- This will return the name of the application role, Sales11.
EXEC sp_unsetapprole @cookie;
-- The application role is no longer active.
-- The original context has now been restored.
GO
SELECT USER_NAME();
-- This will return the name of the original user.
GO
Vedere anche
sp_setapprole (Transact-SQL)
Stored procedure di sistema (Transact-SQL)
Stored procedure di sicurezza (Transact-SQL)
CREATE APPLICATION ROLE (Transact-SQL)
DROP APPLICATION ROLE (Transact-SQL)