다음을 통해 공유


IS_SRVROLEMEMBER(Transact-SQL)

SQL Server 2005 로그인이 지정된 고정 서버 역할의 멤버인지 여부를 나타냅니다.

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

구문

IS_SRVROLEMEMBER ('role' [ , 'login' ] )

인수

  • 'role'
    확인할 서버 역할의 이름입니다. rolesysname입니다.

    role에 유효한 값은 다음과 같습니다.

    sysadmin

    • dbcreator
    • bulkadmin
    • diskadmin
    • processadmin
    • serveradmin
    • setupadmin
    • securityadmin
  • 'login'
    확인할 SQL Server 2005 로그인의 이름입니다. loginsysname이며 기본값은 NULL입니다. 값을 지정하지 않으면 현재 사용자의 SQL Server 로그인이 사용됩니다.

주의

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

반환 값 설명

0

loginrole의 멤버가 아닙니다.

1

loginrole의 멤버입니다.

NULL

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

현재 사용자가 서버 역할의 사용 권한이 필요한 작업을 수행할 수 있는지 여부를 확인하려면 이 함수를 사용합니다.

London\JoeB와 같은 Microsoft Windows 로그인이 login에 지정되면 IS_SRVROLEMEMBER는 로그인이 SQL Server 2005에 대한 직접 액세스가 허용 또는 거부되지 않았다면 NULL을 반환합니다.

Windows 도메인 로그인의 경우 Windows 그룹 멤버 자격을 통해 고정 서버 역할의 멤버가 될 수 있습니다. 이러한 간접 멤버 자격을 확인하기 위해 IS_SRVROLEMEMBER는 도메인 컨트롤러에 Windows 그룹 멤버 자격 정보를 요청합니다. 도메인 컨트롤러에 액세스할 수 없거나 도메인 컨트롤러가 응답하지 않으면 IS_SRVROLEMEMBER은 사용자 및 사용자의 로컬 그룹만 고려하여 멤버 자격 정보를 반환합니다.

반환 형식

int

다음 예에서는 현재 사용자의 SQL Server 로그인이 sysadmin 고정 서버 역할의 멤버인지 여부를 확인합니다.

IF IS_SRVROLEMEMBER ('sysadmin') = 1
   print 'Current user''s login is a member of the sysadmin role'
ELSE IF IS_SRVROLEMEMBER ('sysadmin') = 0
   print 'Current user''s login is NOT a member of the sysadmin role'
ELSE IF IS_SRVROLEMEMBER ('sysadmin') IS NULL
   print 'ERROR: The server role specified is not valid.'

참고 항목

참조

IS_MEMBER(Transact-SQL)
보안 함수(Transact-SQL)

도움말 및 정보

SQL Server 2005 지원 받기