sys.database_role_members(Transact-SQL)sys.database_role_members (Transact-SQL)

이 항목은 다음에 적용됩니다. 예SQL Server(2008부터)예Azure SQL Database예Azure SQL Data Warehouse 예병렬 데이터 웨어하우스 THIS TOPIC APPLIES TO: yesSQL Server (starting with 2008)yesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

각 데이터베이스 역할의 각 멤버에 대해 행을 반환합니다.Returns one row for each member of each database role. 데이터베이스 사용자, 응용 프로그램 역할 및 다른 데이터베이스 역할에는 데이터베이스 역할의 멤버일 수 있습니다.Database users, application roles, and other database roles can be members of a database role. 역할에 구성원을 추가 하려면 사용 하 여는 ALTER ROLE 문을 ADD MEMBER 옵션입니다.To add members to a role, use the ALTER ROLE statement with the ADD MEMBER option. 조인이 sys.database_principals 의 이름을 반환 하는 principal_id 값입니다.Join with sys.database_principals to return the names of the principal_id values.

열 이름Column name 데이터 형식Data type DescriptionDescription
role_principal_idrole_principal_id intint 데이터베이스 역할의 보안 주체 ID입니다.Database principal ID of the role.
member_principal_idmember_principal_id intint 멤버의 데이터베이스 보안 주체 ID입니다.Database principal ID of the member.

PermissionsPermissions

모든 사용자는 자신의 역할 멤버 자격을 볼 수 있습니다.Any user can view their own role membership. 멤버 자격을 보려면 다른 역할의 멤버 자격이 필요는 db_securityadmin 고정된 데이터베이스 역할 또는 VIEW DEFINITION 데이터베이스에 있습니다.To view other role memberships requires membership in the db_securityadmin fixed database role or VIEW DEFINITION on the database.

사용자가 소유하고 있거나 사용 권한을 부여 받은 보안 개체에 대해서만 카탈로그 뷰의 메타데이터를 볼 수 있습니다.The visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. 자세한 내용은 Metadata Visibility Configuration을 참조하세요. For more information, see Metadata Visibility Configuration.

예제Example

다음 쿼리는 데이터베이스 역할의 멤버를 반환 합니다.The following query returns the members of the database roles.

SELECT DP1.name AS DatabaseRoleName,   
   isnull (DP2.name, 'No members') AS DatabaseUserName   
 FROM sys.database_role_members AS DRM  
 RIGHT OUTER JOIN sys.database_principals AS DP1  
   ON DRM.role_principal_id = DP1.principal_id  
 LEFT OUTER JOIN sys.database_principals AS DP2  
   ON DRM.member_principal_id = DP2.principal_id  
WHERE DP1.type = 'R'
ORDER BY DP1.name;  

관련 항목:See Also

보안 카탈로그 뷰(Transact-SQL) Security Catalog Views (Transact-SQL)
보안 주체(데이터베이스 엔진) Principals (Database Engine)
카탈로그 뷰(Transact-SQL)Catalog Views (Transact-SQL)
ALTER ROLE (Transact SQLL) ALTER ROLE (Transact-SQLL)
sys.server_role_members (TRANSACT-SQL)sys.server_role_members (Transact-SQL)