내보내기(0) 인쇄
모두 확장
이 문서는 수동으로 번역한 것입니다. 원본 텍스트를 보려면 포인터를 문서의 문장 위로 올리십시오. 추가 정보
번역
원본

sys.database_principals(Transact-SQL)

SQL Server 데이터베이스의 각 주체에 대해 행을 반환합니다.

적용 대상: SQL Server(SQL Server 2008 - 현재 버전), Windows Azure SQL 데이터베이스(최초 릴리스 - 현재 릴리스)

열 이름

데이터 형식

설명

이름

sysname

데이터베이스 내에서 고유한 보안 주체의 이름입니다.

principal_id

int

데이터베이스 내에서 고유한 보안 주체의 ID입니다.

유형

char(1)

보안 주체 유형입니다.

S = SQL 사용자

U = Windows 사용자

G = Windows 그룹

A = 응용 프로그램 역할

R = 데이터베이스 역할

C = 인증서로 매핑된 사용자

K = 비대칭 키로 매핑된 사용자

type_desc

nvarchar(60)

보안 주체 유형에 대한 설명입니다.

SQL_USER

WINDOWS_USER

WINDOWS_GROUP

APPLICATION_ROLE

DATABASE_ROLE

CERTIFICATE_MAPPED_USER

ASYMMETRIC_KEY_MAPPED_USER

default_schema_name

sysname

SQL 이름이 스키마를 지정하지 않을 때 사용되는 이름입니다. S, U 또는 A 유형의 보안 주체의 경우 Null입니다.

create_date

datetime

보안 주체가 생성된 시간입니다.

modify_date

datetime

보안 주체가 마지막으로 수정된 시간입니다.

owning_principal_id

int

이 보안 주체를 소유하는 보안 주체의 ID입니다. 데이터베이스 역할을 제외한 모든 보안 주체는 dbo가 소유해야 합니다.

sid

varbinary(85)

보안 주체의 SID(보안 식별자)입니다. SYS 및 INFORMATION SCHEMAS의 경우 NULL입니다.

is_fixed_role

bit

1이면 이 행은 고정 데이터베이스 역할 db_owner, db_accessadmin, db_datareader, db_datawriter, db_ddladmin, db_securityadmin, db_backupoperator, db_denydatareader, db_denydatawriter 중 하나의 항목을 나타냅니다.

authentication_type

int

인증 유형을 나타냅니다.

설명

0

인증 없음

1

인스턴스 인증

2

데이터베이스 인증

3

Windows 인증

적용 대상: SQL Server 2012부터 SQL Server 2014까지

authentication_type_desc

nvarchar(60)

인증 유형에 대한 설명입니다.

설명

NONE

인증 없음

INSTANCE

인스턴스 인증

DATABASE

데이터베이스 인증

WINDOWS

Windows 인증

적용 대상: SQL Server 2012부터 SQL Server 2014까지

default_language_name

sysname

이 보안 주체의 기본 언어를 나타냅니다.

적용 대상: SQL Server 2012부터 SQL Server 2014까지

default_language_lcid

int

이 보안 주체의 기본 LCID를 나타냅니다.

적용 대상: SQL Server 2012부터 SQL Server 2014까지

PasswordLastSetTime 속성은 SQL Server에서 지원하는 모든 구성에서 사용할 수 있지만 다른 속성은 SQL Server가 Windows Server 2003에서 실행 중이고 CHECK_POLICY 및 CHECK_EXPIRATION이 모두 설정된 경우에만 사용할 수 있습니다. 자세한 내용은 암호 정책을 참조하십시오.

모든 사용자는 자신의 사용자 이름, 시스템 사용자 및 고정 데이터베이스 역할을 볼 수 있습니다. 다른 사용자를 보려면 사용자에 대한 ALTER ANY USER 또는 사용 권한이 필요합니다. 사용자 정의 역할을 보려면 ALTER ANY ROLE 또는 역할의 멤버 자격이 필요합니다.

A: 데이터베이스 보안 주체의 모든 사용 권한 나열

다음 쿼리는 데이터베이스 보안 주체에 대해 명시적으로 부여되거나 거부된 사용 권한을 나열합니다.

중요 정보 중요

고정 데이터베이스 역할의 사용 권한은 sys.database_permissions에 나타나지 않습니다. 따라서 데이터베이스 보안 주체가 여기에 나열되지 않은 추가 사용 권한을 가질 수 있습니다.

SELECT pr.principal_id, pr.name, pr.type_desc, 
    pr.authentication_type_desc, pe.state_desc, pe.permission_name
FROM sys.database_principals AS pr
JOIN sys.database_permissions AS pe
    ON pe.grantee_principal_id = pr.principal_id;

B: 데이터베이스 내의 스키마 개체에 대한 사용 권한 나열

다음 쿼리는 sys.database_principals 및 sys.database_permissions를 sys.objects 및 sys.schemas에 조인하여 특정 스키마 개체에 부여되거나 거부된 사용 권한을 나열합니다.

SELECT pr.principal_id, pr.name, pr.type_desc, 
    pr.authentication_type_desc, pe.state_desc, 
    pe.permission_name, s.name + '.' + o.name AS ObjectName
FROM sys.database_principals AS pr
JOIN sys.database_permissions AS pe
    ON pe.grantee_principal_id = pr.principal_id
JOIN sys.objects AS o
    ON pe.major_id = o.object_id
JOIN sys.schemas AS s
    ON o.schema_id = s.schema_id;
이 정보가 도움이 되었습니까?
(1500자 남음)
의견을 주셔서 감사합니다.

커뮤니티 추가 항목

추가
Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
표시:
© 2014 Microsoft