다음을 통해 공유


sp_helpuser(Transact-SQL)

현재 데이터베이스에서 데이터베이스 수준의 보안 주체 정보를 보고합니다.

중요 정보중요

sp_helpuser는 SQL Server 2005에서 제공되는 보안 개체에 대한 정보를 반환하지 않습니다. 대신 sys.database_principals를 사용하십시오.

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

구문

sp_helpuser [ [ @name_in_db = ] 'security_account' ]

인수

  • [ @name_in_db=] 'security_account'
    현재 데이터베이스의 데이터베이스 사용자 또는 데이터베이스 역할 이름입니다. security_account는 현재 데이터베이스에 있어야 합니다. security_account는 sysname이고 기본값은 NULL입니다. security_account를 지정하지 않으면 sp_helpuser가 모든 데이터베이스 보안 주체에 대한 정보를 반환합니다.

반환 코드 값

0(성공) 또는 1(실패)

결과 집합

다음 표에서는 security_account에 대해 사용자 계정 또는 SQL Server나 Windows 사용자 중 어떤 것도 지정되지 않은 경우의 결과 집합을 보여 줍니다.

열 이름

데이터 형식

설명

UserName

sysname

현재 데이터베이스의 사용자입니다.

RoleName

sysname

UserName이 속한 역할입니다.

LoginName

sysname

UserName의 로그인입니다.

DefDBName

sysname

UserName의 기본 데이터베이스입니다.

DefSchemaName

sysname

데이터베이스 사용자의 기본 스키마입니다.

UserID

smallint

현재 데이터베이스의 UserName ID입니다.

SID

smallint

사용자의 SID(보안 ID)입니다.

다음 표에서는 사용자 계정이 지정되어 있지 않고 현재 데이터베이스에 별칭이 있는 경우의 결과 집합을 보여 줍니다.

열 이름

데이터 형식

설명

LoginName

sysname

현재 데이터베이스에서 사용자의 별칭인 로그인입니다.

UserNameAliasedTo

sysname

현재 데이터베이스에서 로그인을 별칭으로 사용하는 사용자 이름입니다.

다음 표에서는 security_account에 대해 역할이 지정된 경우의 결과 집합을 보여 줍니다.

열 이름

데이터 형식

설명

Role_name

sysname

현재 데이터베이스에 있는 역할의 이름입니다.

Role_id

smallint

현재 데이터베이스에 있는 역할의 역할 ID입니다.

Users_in_role

sysname

현재 데이터베이스에 있는 역할의 멤버입니다.

Userid

smallint

역할 멤버의 사용자 ID입니다.

주의

데이터베이스 역할의 멤버 자격에 대한 정보를 보려면 sys.database_role_members를 사용합니다. 서버 역할 멤버에 대한 정보를 보려면 sys.server_role_members를 사용하고 서버 수준의 보안 주체에 대한 정보를 보려면 sys.server_principals를 사용합니다.

사용 권한

public 역할의 멤버 자격이 필요합니다.

반환되는 정보는 메타데이터에 대한 액세스 제한 사항에 따라 달라집니다. 보안 주체에 사용 권한이 없는 엔터티는 나타나지 않습니다. 자세한 내용은 메타데이터 표시 유형 구성을 참조하십시오.

1. 모든 사용자 나열

다음 예에서는 현재 데이터베이스에 있는 사용자를 모두 나열합니다.

EXEC sp_helpuser

2. 단일 사용자에 관한 정보 나열

다음 예에서는 사용자 데이터베이스 소유자(dbo)에 대한 정보를 나열합니다.

EXEC sp_helpuser 'dbo'

3. 데이터베이스 역할에 관한 정보 나열

다음 예에서는 db_securityadmin 고정 데이터베이스 역할에 대한 정보를 나열합니다.

EXEC sp_helpuser 'db_securityadmin'