다음을 통해 공유


IS_MEMBER(Transact-SQL)

현재 사용자가 지정된 Microsoft Windows 그룹 또는 Microsoft SQL Server 데이터베이스 역할의 멤버인지 여부를 표시합니다.

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

구문

IS_MEMBER ( { 'group' | 'role' } )

인수

  • 'group'
    검사할 Windows 그룹의 이름으로 Domain\Group 형식이어야 합니다. groupsysname입니다.
  • 'role'
    검사할 SQL Server 역할의 이름입니다. rolesysname이며 데이터베이스 고정 역할이나 사용자 정의 역할은 포함할 수 있으나 서버 역할은 포함할 수 없습니다.

반환 유형

int

주의

IS_MEMBER는 다음과 같은 값을 반환합니다.

반환 값 설명

0

현재 사용자가 group 또는 role의 멤버가 아닙니다.

1

현재 사용자가 group 또는 role의 멤버입니다.

NULL

group 또는 role이 잘못되었습니다.

IS_MEMBER는 Windows에서 만든 액세스 토큰을 검사하여 Windows 그룹 멤버를 결정합니다. 액세스 토큰은 사용자가 SQL Server 인스턴스에 연결한 후에 변경된 그룹 멤버 변경 내용을 반영하지 않습니다.

다음 예에서는 현재 사용자가 데이터베이스 역할 또는 Windows 도메인 그룹의 멤버인지 확인합니다.

-- Test membership in db_owner and print appropriate message.
IF IS_MEMBER ('db_owner') = 1
   print 'Current user is a member of the db_owner role'
ELSE IF IS_MEMBER ('db_owner') = 0
   print 'Current user is NOT a member of the db_owner role'
ELSE IF IS_MEMBER ('db_owner') IS NULL
   print 'ERROR: Invalid group / role specified'
go

-- Execute SELECT if user is a member of ADVWORKS\Shipping.
IF IS_MEMBER ('ADVWORKS\Shipping') = 1
   SELECT 'User ' + USER + ' is a member of ADVWORKS\Shipping.' 
go

참고 항목

참조

IS_SRVROLEMEMBER(Transact-SQL)
보안 카탈로그 뷰(Transact-SQL)
sp_addrolemember(Transact-SQL)
sp_addsrvrolemember(Transact-SQL)
sp_droprolemember(Transact-SQL)
sp_dropsrvrolemember(Transact-SQL)

관련 자료

보안 주체

도움말 및 정보

SQL Server 2005 지원 받기