sp_unsetapprole (Transact-SQL)

Si applica a: sìSQL Server (tutte le versioni supportate)

Disattiva un ruolo applicazione e ripristina il contesto di sicurezza precedente.

Icona di collegamento a un argomento 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

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)