다음을 통해 공유


sp_unsetapprole(Transact-SQL)

적용 대상: SQL Server

애플리케이션 역할을 비활성화하고 이전 보안 컨텍스트로 되돌려 줍니다.

Transact-SQL 구문 표기 규칙

구문

sp_unsetapprole [ @cookie = ] cookie
[ ; ]

인수

애플리케이션 역할이 활성화될 때 만들어진 쿠키를 지정합니다. @cookie varbinary(8000)이며 기본값은 없습니다. 쿠키는 sp_setapprole 의해 만들어집니다.

참고 항목

쿠키 OUTPUT 매개 변수 sp_setapprole 는 현재 올바른 최대 길이인 varbinary(8000)문서화되어 있습니다. 그러나 현재 구현은 varbinary(50) 입니다. 이후 릴리스에서 쿠키 반환 크기가 증가하는 경우 애플리케이션이 계속 올바르게 작동하도록 애플리케이션은 varbinary(8000)를 계속 예약해야 합니다.

반환 코드 값

0(성공) 및 1(실패)

설명

애플리케이션 역할을 사용하여 sp_setapprole활성화한 후에는 사용자가 서버에서 연결을 끊거나 실행할 때까지 역할이 활성 상태로 유지됩니다 sp_unsetapprole.

애플리케이션 역할에 대한 개요는 애플리케이션 역할을 참조 하세요.

사용 권한

애플리케이션 역할이 활성화되었을 때 저장된 쿠키에 대한 공용 멤버 자격 및 지식이 필요합니다.

예제

다음 예제에서는 암호fdsd896#gfdbfdkjgh700mMSales11 애플리케이션 역할을 활성화하고 쿠키를 만듭니다. 다음 예에서는 현재 사용자의 이름을 반환한 다음 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();

-- 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

-- Return the name of the original user.
SELECT USER_NAME();
GO