sp_unsetapprole (Transact-SQL)
Desativa uma função de aplicativo e reverte para o contexto de segurança anterior.
Convenções da sintaxe Transact-SQL
Sintaxe
sp_unsetapprole @cookie
Argumentos
@cookie
Especifica o cookie criado quando a função de aplicativo foi ativada. O cookie é criado por sp_setapprole (Transact-SQL). varbinary(8000).Observação O parâmetro OUTPUT de cookie para sp_setapprole é documentado atualmente como varbinary(8000) que é o comprimento máximo correto. No entanto, a implementação atual retorna varbinary(50). Os aplicativos devem continuar a reservar varbinary(8000) para que o aplicativo continue a operar corretamente se o tamanho de retorno do cookie aumentar em uma versão futura.
Valores do código de retorno
0 (êxito) e 1 (falha)
Comentários
Após uma função de aplicativo ser ativada com sp_setapprole, ela permanece ativa até o usuário se desconectar do servidor ou executar sp_unsetapprole.
Para obter uma visão geral das funções de aplicativo, consulte Funções de aplicativo.
Permissões
Requer associação em public e conhecimento do cookie salvo quando a função de aplicativo foi ativada.
Exemplos
Ativando uma função de aplicativo com um cookie e revertendo para o contexto anterior
O exemplo a seguir ativa a função de aplicativo Sales11 com a senha fdsd896#gfdbfdkjgh700mM e cria um cookie. O exemplo retorna o nome do usuário atual e, em seguida, reverte para o contexto original executando 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
Consulte também
Referência
Procedimentos armazenados do sistema (Transact-SQL)
Procedimentos armazenados de segurança (Transact-SQL)