Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Database SQL di
AzureIstanza gestita di SQL di
AzureAzure Synapse Analytics
Piattaforma di analisi (PDW)
Endpoint di analisi SQL in Microsoft Fabric
Warehouse in Microsoft Fabric
Database SQL in Anteprima di Microsoft Fabric
Restituisce una riga per ogni membro di ogni ruolo del database. Gli utenti del database, i ruoli applicazione e altri ruoli del database possono essere membri di un ruolo del database. Per aggiungere membri a un ruolo, usare l'istruzione ALTER ROLE con l'opzione ADD MEMBER
. Creare un join con sys.database_principals per restituire i nomi dei principal_id
valori.
Column name | Data type | Description |
---|---|---|
role_principal_id | int | ID dell'entità di database del ruolo. |
member_principal_id | int | ID dell'entità di database del membro. |
Permissions
Qualsiasi utente può visualizzare la propria appartenenza al ruolo. Per visualizzare altre appartenenze ai ruoli è necessaria l'appartenenza al ruolo predefinito del db_securityadmin
database o VIEW DEFINITION
al database.
La visibilità dei metadati nelle viste del catalogo è limitata alle entità a protezione diretta di cui l'utente è proprietario o per le quali dispone di autorizzazioni. Per altre informazioni, vedere Metadata Visibility Configuration.
Example
La query seguente restituisce i membri dei ruoli del database.
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
Viste del catalogo della sicurezza (Transact-SQL)
Entità di sicurezza (Motore di database)
Viste del catalogo (Transact-SQL)
ALTER ROLE (Transact-SQLL)
sys.server_role_members (Transact-SQL)