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

適用対象:Applies to: ○ SQL ServerSQL Server (サポートされているすべてのバージョン)yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance yesAzure Synapse Analytics うんParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse適用対象:Applies to: ○ SQL ServerSQL Server (サポートされているすべてのバージョン)yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance yesAzure Synapse Analytics うんParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse

データベース ロールのメンバーごとに 1 行のデータを返します。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. 値の名前を返すには、 database_principalsと結合します。 principal_idJoin with sys.database_principals to return the names of the principal_id values.

列名Column name データ型Data type 説明Description
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.

アクセス許可Permissions

すべてのユーザーは自分のロールのメンバーシップを参照できます。Any user can view their own role membership. 他のロールのメンバーシップを表示するに db_securityadmin は、固定データベースロールまたはデータベースのメンバーシップが必要です VIEW DEFINITIONTo 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-sql) ALTER ROLE (Transact-SQLL)
sys.server_role_members (Transact-SQL)sys.server_role_members (Transact-SQL)