sys.server_principals (T-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAnalytics Platform System (PDW)

Berisi baris untuk setiap prinsipal tingkat server.

Catatan

ID Microsoft Entra sebelumnya dikenal sebagai Azure Active Directory (Azure AD).

Nama kolom Jenis data Deskripsi
nama nama sysname Nama kepala sekolah. Unik dalam server.
principal_id int Nomor ID Prinsipal. Unik dalam server.
Sid varbinary(85) SID (Security-IDentifier) dari perwakilan. Jika prinsipal Windows, maka cocok dengan Windows SID.
jenis karakter(1) Jenis utama:

S = Masuk SQL

U = Login Windows

G = Grup Windows

R = Peran server

C = Login dipetakan ke sertifikat

E = Login Eksternal dari ID Microsoft Entra

X = Grup eksternal dari grup atau aplikasi Microsoft Entra

K = Login dipetakan ke kunci asimetris
type_desc nvarchar(60) Deskripsi jenis utama:

SQL_LOGIN

WINDOWS_LOGIN

WINDOWS_GROUP

SERVER_ROLE

CERTIFICATE_MAPPED_LOGIN

EXTERNAL_LOGIN

EXTERNAL_GROUP

ASYMMETRIC_KEY_MAPPED_LOGIN
is_disabled int 1 = Login dinonaktifkan.
create_date datetime Waktu di mana prinsipal dibuat.
modify_date datetime Waktu di mana definisi utama terakhir diubah.
default_database_name nama sysname Database default untuk prinsip ini.
default_language_name nama sysname Bahasa default untuk prinsip ini.
credential_id int ID kredensial yang terkait dengan prinsip ini. Jika tidak ada kredensial yang terkait dengan prinsipal ini, credential_id akan NULL.
owning_principal_id int Principal_id pemilik peran server. NULL jika prinsipal bukan peran server.
is_fixed_role bit Mengembalikan 1 jika prinsipal adalah salah satu peran server bawaan dengan izin tetap. Untuk informasi selengkapnya, lihat Peran Tingkat Server.

Izin

Setiap login dapat melihat nama login mereka sendiri, login sistem, dan peran server tetap. Untuk melihat login lain, memerlukan ALTER ANY LOGIN, atau izin pada login. Untuk melihat peran server yang ditentukan pengguna, memerlukan ALTER ANY SERVER ROLE, atau keanggotaan dalam peran tersebut.

Di Azure SQL Database, hanya prinsipal berikut yang dapat melihat semua login:

  • anggota peran server ##MS_LoginManager## atau peran database khusus loginmanager di master
  • admin Microsoft Entra dan admin server SQL

Visibilitas metadata dalam tampilan katalog terbatas pada keamanan yang dimiliki pengguna, atau di mana pengguna diberikan beberapa izin. Untuk informasi selengkapnya, lihat Konfigurasi Visibilitas Metadata.

Contoh

Kueri berikut mencantumkan izin yang secara eksplisit diberikan atau ditolak untuk prinsipal server.

Penting

Izin peran server tetap (selain publik) tidak muncul di sys.server_permissions. Oleh karena itu, prinsipal server mungkin memiliki izin tambahan yang tidak tercantum di sini.

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;  

Catatan

Izin peran server tetap tidak muncul di sys.server_permissions.

Lihat juga

Tampilan Katalog Keamanan (Transact-SQL)
Tampilan Katalog (Transact-SQL)
Prinsipal (Mesin Database)
Hierarki Izin (Mesin Database)