문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

ORIGINAL_LOGIN(Transact-SQL)

SQL Server의 인스턴스에 연결된 로그인의 이름을 반환합니다. 이 함수를 사용하여 명시적 또는 암시적 컨텍스트 전환이 많은 세션의 원래 로그인 ID를 반환할 수 있습니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

ORIGINAL_LOGIN( )

이 함수는 원래 연결 컨텍스트의 ID를 감사하는 데 유용할 수 있습니다. SESSION_USERCURRENT_USER와 같은 함수가 현재 실행 중인 컨텍스트를 반환하는 반면에 ORIGINAL_LOGIN은 해당 세션에서 SQL Server의 해당 인스턴스에 최초로 연결한 로그인의 ID를 반환합니다.

다음 예에서는 현재 세션의 실행 컨텍스트를 문의 호출자에서 login1로 전환합니다. SUSER_SNAMEORIGINAL_LOGIN 함수를 사용하여 현재 세션 사용자(컨텍스트가 전환되는 대상 사용자)와 원래 로그인 계정을 반환할 수 있습니다.

USE AdventureWorks2012;
GO
--Create a temporary login and user.
CREATE LOGIN login1 WITH PASSWORD = 'J345#$)thb';
CREATE USER user1 FOR LOGIN login1;
GO
--Execute a context switch to the temporary login account.
DECLARE @original_login sysname;
DECLARE @current_context sysname;
EXECUTE AS LOGIN = 'login1';
SET @original_login = ORIGINAL_LOGIN();
SET @current_context = SUSER_SNAME();
SELECT 'The current executing context is: '+ @current_context;
SELECT 'The original login in this session was: '+ @original_login
GO
-- Return to the original execution context
-- and remove the temporary principal.
REVERT;
GO
DROP LOGIN login1;
DROP USER user1;
GO

커뮤니티 추가 항목

추가
표시: