共用方式為


主體 (Database Engine)

主體是可要求 SQL Server 資源的實體。 主體就像其他 SQL Server 授權模型的元件一樣,可以階層方式安排。 主體的影響範圍,取決於主體定義的範圍:Windows、伺服器、資料庫;以及主體是否為不可分割或集合。 「Windows 登入」是不可分割主體的一個範例,而「Windows 群組」則是主體為集合的範例。 每個主體都有一個安全性識別碼 (SID)。

Windows 層級主體

  • Windows 網域登入

  • Windows 本機登入

SQL Server-層級主體

  • SQL Server 登入

  • 伺服器角色

資料庫層級主體

  • 資料庫使用者

  • 資料庫角色

  • 應用程式角色

SQL Server sa 登入

SQL Server sa 登入是伺服器層級主體。 根據預設,安裝執行個體時會建立它。 從 SQL Server 2005 開始,sa 的預設資料庫為 master。 這是和舊版 SQL Server 不同的一項行為變更。

public 資料庫角色

每個資料庫使用者都屬於 public 資料庫角色。 當使用者未被授與或拒絕安全性實體的特定權限時,該使用者會繼承授與給該安全性實體之 public 的權限。

INFORMATION_SCHEMA 與 sys

每個資料庫都包含兩個在目錄檢視中顯示為使用者的實體:INFORMATION_SCHEMA 和 sys。 SQL Server需要這些實體。 它們並非主體,也不能被修改或卸除。

以憑證為基礎的 SQL Server 登入

以兩個 ## 符號括住的伺服器主體名稱僅供內部系統使用。 在安裝 SQL Server 時,將會從憑證建立下列主體,而且不應該刪除它們。

  • ##MS_SQLResourceSigningCertificate##

  • ##MS_SQLReplicationSigningCertificate##

  • ##MS_SQLAuthenticatorCertificate##

  • ##MS_AgentSigningCertificate##

  • ##MS_PolicyEventProcessingLogin##

  • ##MS_PolicySigningCertificate##

  • ##MS_PolicyTsqlExecutionLogin##

guest 使用者

每個資料庫都包含 客體。 具有資料庫存取權但在資料庫中沒有使用者帳戶的使用者,將繼承授與 guest 使用者的權限。 無法卸載 來賓 使用者,但可以撤銷其 CONNECT 許可權來停用。 CONNECT許可權可以藉由在 master 或 tempdb 以外的任何資料庫中執行 REVOKE CONNECT FROM GUEST 來撤銷。

用戶端和資料庫伺服器

根據定義,用戶端和資料庫伺服器都是安全性主體,而且可以維護其安全。 建立安全的網路連接之前,這些實體可以進行相互驗證。 SQL Server支援Kerberos驗證通訊協定,其定義用戶端如何與網路驗證服務互動。

下列主題包含在《SQL Server 線上叢書》的這個章節中:

另請參閱

保護 SQL Server 的安全
sys.database_principals (Transact-SQL)
sys.server_principals (Transact-SQL)
sys.sql_logins (Transact-SQL)
sys.database_role_members (Transact-SQL)
伺服器層級角色
資料庫層級角色