Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Deaktivuje roli aplikace a vrátí se k předchozímu kontextu zabezpečení.
Syntaxe
sp_unsetapprole [ @cookie = ] cookie
[ ; ]
Argumenty
[ @cookie = ] cookie
Určuje soubor cookie, který byl vytvořen při aktivaci role aplikace. @cookie je varbinary(8000) bez výchozího nastavení. Soubor cookie je vytvořen sp_setapprole.
Poznámka:
Parametr cookie OUTPUT pro sp_setapprole je aktuálně zdokumentovaný jako varbinary(8000), což je správná maximální délka. Aktuální implementace však vrátí varbinary(50). Aplikace by měly i nadále rezervovat varbinary(8000), aby aplikace fungovala správně, pokud se velikost vrácení souboru cookie v budoucí verzi zvýší.
Hodnoty návratového kódu
0 (úspěch) a 1 (selhání)
Poznámky
Po aktivaci role aplikace pomocí sp_setapprolezůstane role aktivní, dokud se uživatel neodpojí od serveru nebo nespustí sp_unsetapprole.
Přehled aplikačních rolí najdete v tématu Role aplikací.
Povolení
Vyžaduje členství ve veřejném prostředí a znalost souboru cookie uloženého při aktivaci role aplikace.
Příklady
Aktivace role aplikace pomocí souboru cookie a návrat k předchozímu kontextu
Následující příklad aktivuje Sales11 roli aplikace a vytvoří soubor cookie. Příklad vrátí název aktuálního uživatele a pak se vrátí k původnímu kontextu spuštěním sp_unsetapprole. Nahraďte <password> silným heslem.
DECLARE @cookie AS VARBINARY (8000);
EXECUTE sp_setapprole 'Sales11',
'<password>',
@fCreateCookie = true,
@cookie = @cookie OUTPUT;
-- The application role is now active.
SELECT USER_NAME();
-- Return the name of the application role, Sales11.
EXECUTE sp_unsetapprole @cookie;
-- The application role is no longer active.
-- The original context has now been restored.
GO
-- Return the name of the original user.
SELECT USER_NAME();
GO