【數據庫】淺析登錄名與用戶的聯繫

前言:當我們學到“數據庫安全性控制”這章時,會遇到登錄名與用戶這兩個概念。如果沒有理清楚,那麼在SQL Server 軟件中會不知如何下手。本篇文章就是來淺析他們之間的關係以及再該軟件中如何創建。

一、登錄名

我們登陸SQL Server軟件時,會出現連接到服務器。通常我們是默認Windows 身份驗證直接登陸的。
在這裏插入圖片描述
但是我們要用SQL Server 身份驗證登陸的話,就需要登陸名和密碼才能登陸了。
在這裏插入圖片描述
那麼,什麼是登錄名?
就是一個賬號密碼可以登陸SQL Server軟件。
比如,系統通常默認一個sa,就是登錄名,它擁有所有權限。
但是,新創建的登錄名只能連接進去,沒有任何權限。
如何創建登錄名?
通過Windows 身份驗證默認登陸進去,或者SQL Server身份驗證sa登錄名登陸進去。

  1. 可視化嚮導創建登錄名
    在這裏插入圖片描述

在這裏插入圖片描述
2. SQL 語法創建登錄名
CREATE LOGIN 登錄名 WITH PASSWORD=‘密碼’,
DEFAULT_DATABASE= 數據庫名
例如:

CREATE LOGIN David WITH PASSWORD='123456',
DEFAULT_DATABASE= TPCH

二、用戶

在這裏插入圖片描述
通過圖片我們可以看到,有兩個安全性,一個是總數據庫的安全性,另一個是具體某個數據庫的安全性;具體某個數據庫裏的安全性纔有用戶。
那麼,什麼是用戶?
我們可以這樣理解,用戶就是可以登陸某個數據庫的賬號。比如,登錄名就是登陸總數據庫的賬號。
但是,他們之間是有區別和聯繫的。
如果我們用新建的登錄名連接進去,正常情況下是查看不了某個數據庫的。
爲什麼?
因爲沒有給登錄名創建用戶。只有該登錄名下有用戶,才能夠查看具體數據庫。至於能看到具體數據庫什麼內容,這裏就要涉及到權限和角色了。
所以,先有登錄名,纔有用戶;用戶是在登陸名下的。
注意:
通常情況下,新建的登錄名下只能創建一個用戶,再創建就會報錯。
如何創建用戶?

  1. 可視化嚮導創建用戶
    在這裏插入圖片描述
    在這裏插入圖片描述
  2. SQL 語法創建用戶
    CREATE USER 用戶名 FOR LOGIN 登錄名 WITH DEFAULT_SCHEMA=模式名
    例如:
CREATE USER David FOR LOGIN David WITH DEFAULT_SCHEMA=dbo

總結:

先有登錄名,再有用戶。
登錄名是有賬號密碼的,而用戶沒有。
登錄名是用來連接到服務器的,而用戶是用來訪問具體某個數據庫的。
登錄名進去可以查看什麼數據庫,就需要通過用戶來去訪問;具體能訪問到什麼數據庫就要看用戶的權限。
登錄名跟用戶的名稱可以一致。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章