Delen via


sys.server_principals (Transact-SQL)

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAnalytics Platform System (PDW)

Bevat een rij voor elke principal op serverniveau.

Opmerking

Microsoft Entra-id werd voorheen Azure Active Directory (Azure AD) genoemd.

Kolomnaam Gegevenstype Description
name sysname Naam van de principal. Is uniek binnen een server.
principal_id int Id-nummer van de principal. Is uniek binnen een server.
Sid varbinary(85) Beveiligings-id (SID) van de principal.
De SID van een Windows-principal komt overeen met hun Windows-SID.
De SID van een Microsoft Entra-gebruikersidentiteit is de binaire weergave van de object-id van Microsoft Entra.
De SID van een Microsoft Entra-groep is de binaire weergave van de object-id van Microsoft Entra.
De SID van een Microsoft Entra-toepassing is de binaire weergave van de Microsoft Entra-client-id.
type char(1) Principal-type:

S = SQL-aanmelding
R = Serverfunctie

Beschikbaar in SQL Server, Azure SQL Managed Instance en PDW (in preview in Azure SQL Database):
E = Externe aanmelding of toepassing van Microsoft Entra-id
X = Externe groep van Microsoft Entra-id

Beschikbaar in SQL Server, Azure SQL Managed Instance en PDW (niet Azure SQL Database):
U = Windows-aanmelding
G = Windows-groep
C = Aanmelding toegewezen aan een certificaat
K = Aanmelding toegewezen aan een asymmetrische sleutel
type_desc nvarchar(60) Beschrijving van het principal-type:

SQL_LOGIN
SERVER_ROLE

Beschikbaar in SQL Server, Azure SQL Managed Instance en PDW (in preview in Azure SQL Database):
EXTERNAL_LOGIN
EXTERNAL_GROUP

Beschikbaar in SQL Server, Azure SQL Managed Instance en PDW (niet Azure SQL Database):
WINDOWS_LOGIN
WINDOWS_GROUP
CERTIFICATE_MAPPED_LOGIN
ASYMMETRIC_KEY_MAPPED_LOGIN
is_disabled int 1 = Aanmelden is uitgeschakeld.
0 = Aanmelden is ingeschakeld.
create_date datetime Tijdstip waarop de principal is gemaakt.
modify_date datetime Tijdstip waarop de principal-definitie voor het laatst is gewijzigd.
default_database_name sysname Standaarddatabase voor de principal.
default_language_name sysname Standaardtaal voor de principal.
credential_id int Id van een referentie die is gekoppeld aan de principal. Als er geen referentie aan deze principal is gekoppeld, is credential_id NULL.
owning_principal_id int De principal_id van de eigenaar van een serverfunctie. NULL als de principal geen serverfunctie is.
is_fixed_role bit Retourneert 1 als de principal een van de ingebouwde serverfuncties met vaste machtigingen is. Zie Server-Level Rollen voor meer informatie.

Permissions

Elke aanmelding kan hun eigen aanmeldingsnaam, de systeemaanmelding en de vaste serverfuncties zien. Voor het weergeven van andere aanmeldingen is ALTER ANY LOGIN of een machtiging voor de aanmelding vereist. Voor het weergeven van door de gebruiker gedefinieerde serverfuncties is ALTER ANY SERVER ROLE of lidmaatschap van de rol vereist.

In Azure SQL Database kunnen alleen de volgende principals alle aanmeldingen zien:

  • leden van de serverrol ##MS_LoginManager## of aanmeldingsmanager voor speciale databasefuncties in master
  • de Microsoft Entra-beheerder en sql-serverbeheerder

De zichtbaarheid van de metagegevens in catalogusweergaven is beperkt tot beveiligbare items waarvan een gebruiker eigenaar is of waarvoor de gebruiker een bepaalde machtiging heeft gekregen. Zie Zichtbaarheidsconfiguratie voor metagegevensvoor meer informatie.

Opmerkingen

In Azure SQL Database worden SQL-aanmeldingen niet bewaard in de sys.server_principals catalogusweergave. Als u daarom het rollidmaatschap op serverniveau in Azure SQL Database wilt ophalen, moet de catalogusweergave sys.sql_logins worden gekoppeld.

Voorbeelden

De volgende query bevat de machtigingen die expliciet aan server-principals zijn verleend of geweigerd.

SELECT pr.principal_id, pr.name, pr.type_desc,   
    pe.state_desc, pe.permission_name   
FROM sys.server_principals AS pr   
JOIN sys.server_permissions AS pe   
    ON pe.grantee_principal_id = pr.principal_id;  

Belangrijk

De machtigingen van vaste serverfuncties (anders dan openbaar) worden niet weergegeven in sys.server_permissions. Daarom hebben server-principals mogelijk aanvullende machtigingen die hier niet worden vermeld.

Beveiligingscatalogusweergaven (Transact-SQL)
Catalogusweergaven (Transact-SQL)
Principals (Databasemotor)
Hiƫrarchie van machtigingen (database-engine)