建立登入

適用于:SQL Server (Azure SQL Database Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System ( PDW) 的所有支援) 版本

本文說明如何使用 SQL Server Management Studio (SSMS) 或 Transact-SQL,在 SQL Server 或 Azure SQL Database 中建立登入。 登入是連接到SQL Server實例的人員或進程的身分識別。

背景

登入是安全性主體或可由安全系統驗證的實體。 使用者需要登入才能連線到SQL Server。 您可以根據 Windows 主體建立登入 (例如網域使用者或 Windows 網域群組) ,也可以建立不是以 Windows 主體為基礎的登入 (,例如SQL Server登入) 。

注意

若要使用SQL Server驗證,Database Engine 必須使用混合模式驗證。 如需詳細資訊,請參閱 選擇驗證模式

Azure SQL引進了 Azure Active Directory 伺服器主體 (登入,) 用來驗證 Azure SQL Database、Azure SQL 受控執行個體 和 Azure Synapse Analytics (專用 SQL 集區) 。

登入做為安全性主體時,可以將權限授與登入。 登入的範圍是整個 Database Engine。 若要連線到SQL Server實例上的特定資料庫,登入必須對應至資料庫使用者。 資料庫內的權限是對資料庫使用者授與或拒絕,而不是登入。 例如,具有整個實例SQL Server (範圍的許可權,可以將CREATE ENDPOINT許可權) 授與登入。

注意

當登入連線到SQL Server時,會在 master 資料庫中驗證身分識別。 使用自主資料庫使用者,在資料庫層級驗證SQL Server和SQL Database連線。 使用自主資料庫使用者時,不需要登入。 自主資料庫是與其他資料庫隔離的資料庫,與裝載資料庫的SQL Server或SQL Database (實例以及主控資料庫的 master 資料庫) 。 SQL Server支援 Windows 和SQL Server驗證的自主資料庫使用者。 使用SQL Database時,請將自主資料庫使用者與資料庫層級防火牆規則結合。 如需詳細資訊,請參閱 自主的資料庫使用者 - 使資料庫可攜

安全性

SQL Server需要伺服器上的ALTER ANY LOGINALTER LOGIN許可權。

SQL Database需要loginmanager角色的成員資格。

使用 SSMS 建立登入以進行SQL Server

  1. 在 [物件總管] 中,展開要建立新登入之伺服器執行個體的資料夾。

  2. 以滑鼠右鍵按一下 [安全性] 資料夾,指向 [新增],然後選取 [登入...]。

  3. 在 [登入 - 新增] 對話方塊的 [一般] 頁面上,於 [登入名稱] 方塊中輸入使用者的名稱。 或者,選取 [ 搜尋...] 以開啟 [ 選取使用者或群組 ] 對話方塊。

    如果您選取 [搜尋...]:

    1. [選取此物件類型] 底下,選取 [ 物件類型...] 以開啟 [ 物件類型 ] 對話方塊,然後選取下列任一項或所有專案: 內建的安全性主體群組使用者。 預設會選取 [內建安全性主體] 和 [使用者]。 完成後,選取 [確定]

    2. 在 [從這個位置] 底下,選取 [位置...] 以開啟 [位置] 對話方塊,然後選取其中一個可用的伺服器位置。 完成後,選取 [確定]

    3. 在 [輸入要選取的物件名稱 (範例)] 底下,輸入要尋找的使用者或群組名稱。 如需詳細資訊,請參閱< 選擇使用者、電腦或群組對話方塊>。

    4. 選取 [ 進階...] 以取得更進階的搜尋選項。 如需詳細資訊,請參閱 選擇使用者、電腦或群組對話方塊 - 進階頁面

    5. 選取 [確定]。

  4. 若要建立以 Windows 主體為基礎的登入,請選取 [Windows 驗證] 。 這是預設選項。

  5. 若要建立儲存在SQL Server資料庫的登入,請選取[SQL Server驗證]。

    1. 在 [密碼] 方塊中,輸入新使用者的密碼。 在 [確認密碼] 方塊中再次輸入密碼。

    2. 變更現有密碼時,選取 [指定舊密碼] ,然後在 [舊密碼] 方塊中輸入舊密碼。

    3. 若要強制執行複雜性和強制執行的密碼原則選項,請選取 [強制執行密碼原則] 。 如需詳細資訊,請參閱< Password Policy>。 這是已選取 [SQL Server 驗證] 時的預設選項。

    4. 若要強制執行逾期的密碼原則選項,請選取 [強制執行密碼逾期] 。 必須選取 [強制執行密碼原則] 才能啟用此核取方塊。 這是已選取 [SQL Server 驗證] 時的預設選項。

    5. 若要強制使用者必須在第一次使用登入後建立新的密碼,請選取 [使用者必須在下次登入時變更密碼] 。 必須選取 [強制執行密碼逾期] 才能啟用此核取方塊。 這是已選取 [SQL Server 驗證] 時的預設選項。

  6. 若要將登入與獨立安全性憑證建立關聯,請選取 [已對應到憑證],然後從清單中選取現有憑證的名稱。

  7. 若要將登入與獨立非對稱金鑰建立關聯,請選取 [已對應到非對稱金鑰],然後從清單中選取現有金鑰的名稱。

  8. 若要將登入與安全性認證產生關聯,請選取 [ 對應至認證 ] 核取方塊,然後從清單中選取現有的認證,或選取 [ 新增 ] 以建立新的認證。 若要從登入中移除與安全性認證的對應,請從 [對應認證 ] 中選取認證,然後選取 [ 移除]。 如需一般認證的詳細資訊,請參閱 認證 (Database Engine)

  9. [預設資料庫] 清單中,為登入選取預設的資料庫。 [Master] 是此選項的預設值。

  10. [預設語言] 清單中,為登入選取預設的語言。

  11. 選取 [確定]。

其他選項

[登入 - 新增] 對話方塊也在其他四個頁面上提供選項:[伺服器角色]、[使用者對應]、[安全性實體] 和 [狀態]。

伺服器角色

注意

這些伺服器角色不適用於SQL Database。

[伺服器角色] 頁面列出所有可指派給新登入的可能角色。 有下列選項可供使用:

[bulkadmin] 核取方塊
bulkadmin 固定伺服器角色的成員可以執行 BULK INSERT 陳述式。

[dbcreator] 核取方塊
dbcreator 固定伺服器角色的成員可以建立、改變、卸除及還原任何資料庫。

[diskadmin] 核取方塊
diskadmin 固定伺服器角色的成員可以管理磁碟檔案。

[processadmin] 核取方塊
processadmin固定伺服器角色的成員可以終止在 Database Engine 實例中執行的進程。

[public] 核取方塊
所有 SQL Server 使用者、群組和角色預設都屬於 public 固定伺服器角色。

[securityadmin] 核取方塊
securityadmin 固定伺服器角色的成員可以管理登入及其屬性。 他們可以 GRANT、DENY 及 REVOKE 伺服器層級權限。 他們也可以 GRANT、DENY 和 REVOKE 資料庫層級權限。 此外,他們可以重設SQL Server登入的密碼。

[serveradmin] 核取方塊
serveradmin 固定伺服器角色的成員可以變更全伺服器組態選項及關閉伺服器。

[setupadmin] 核取方塊
setupadmin 固定伺服器角色的成員可以加入和移除連結的伺服器,也可以執行一些系統預存程序。

[系統管理員] 核取方塊
系統管理員固定伺服器角色的成員可以在 Database Engine 中執行任何活動。

使用者對應

[使用者對應] 頁面列出所有可能的資料庫和這些資料庫上可套用至此登入的資料庫角色成員資格。 所選的資料庫決定可供登入使用的角色成員資格。 此頁面提供下列選項:

已對應到此登入的使用者
選取此登入可以存取的資料庫。 選取資料庫時,[資料庫角色成員資格對象: <資料庫名稱>] 窗格會顯示有效的資料庫角色。

地圖
允許登入存取下列資料庫。

Database
列出伺服器上可用的資料庫。

使用者
指定要對應至登入的資料庫使用者。 依預設,資料庫使用者與登入的名稱相同。

預設結構描述
指定使用者的預設結構描述。 使用者最初建立時,預設結構描述為 dbo。 您可以指定尚未存在的預設架構。 您無法為對應至 Windows 群組、憑證或非對稱金鑰的使用者指定預設架構。

已啟用 <資料庫名稱> 的來賓帳戶
唯讀屬性,表示選取的資料庫上是否啟用 Guest 帳戶。 使用 Guest 帳戶之 [登入屬性] 對話方塊的 [狀態] 頁面,啟用或停用 Guest 帳戶。

資料庫角色成員資格對象: <資料庫名稱>
在指定的資料庫中選取使用者的角色。 所有使用者都是每個資料庫中 公用 角色的成員,而且無法移除。 如需資料庫角色的詳細資訊,請參閱 資料庫層級角色

安全性實體

[安全性實體] 頁面列出所有可能的安全性實體以及可授與登入的安全性實體權限。 此頁面提供下列選項:

上方格
包含一個或多個可以設定權限的項目。 顯示在上方格中的資料行會隨著主體或安全性實體而有所不同。

若要在上方格中加入項目:

  1. 選取 [搜尋]。

  2. 在 [ 新增物件] 對話方塊中,選取下列其中一個選項: 特定物件...類型的所有物件...,或 伺服器server_name。 選取 [確定]。

    注意

    選取 [伺服器] server_name 會自動填入該伺服器所有安全性實體物件的上方方格。

  3. 如果您選取 [特定物件...]:

    1. 在 [ 選取物件] 對話方塊的 [ 選取這些物件類型] 底下,選取 [ 物件類型...]。

    2. 在 [選取物件類型] 對話方塊中,選取下列任何一個或所有物件類型:[端點]、[登入]、[伺服器]、[可用性群組] 和 [伺服器角色]。 選取 [確定]。

    3. [輸入物件名稱] 底下,選取 [ (範例) ],選取 [ 流覽...]。

    4. 在 [ 流覽物件] 對話方塊中,選取您在 [ 選取物件類型 ] 對話方塊中選取之類型的任何可用物件,然後選取 [ 確定]。

    5. 在 [ 選取物件] 對話方塊中,選取 [確定]。

  4. 如果您選取 [下列類型的所有物件...],請在 [選取物件類型] 對話方塊中,選取下列任何一個或所有物件類型:[端點]、[登入]、[伺服器]、[可用性群組] 和 [伺服器角色]。 選取 [確定]。

名稱
加入此方格的每一個主體或安全性實體名稱。

型別
描述每個項目的類型。

明確索引標籤
列出上方格中選取之安全性實體的可能權限。 並非所有選項都適用於所有明確權限。

權限
權限的名稱。

授與者
授與權限的主體。

授與
選取此選項即可授與此權限給登入。 清除此選項即可撤銷這個權限。

使用授與
反映出所列權限之 WITH GRANT 選項的狀態。 這個方塊是唯讀的。 若要套用此權限,請使用 GRANT 陳述式。

拒絕
選取此選項即可拒絕授與此權限給登入。 清除此選項即可撤銷這個權限。

狀態

[狀態] 頁面會列出一些可在選取的登入SQL Server設定的驗證和授權選項。

此頁面提供下列選項:

連接到 Database Engine 的權限
使用這個設定時,應該將選取的登入視為可對其授與或拒絕安全性實體權限的主體。

選取 [授與] 可為登入授與 CONNECT SQL 權限。 選取 [拒絕] 則可以拒絕授與登入 CONNECT SQL 權限。

登入
使用這個設定時,應該將選取的登入視為資料表中的記錄。 對此處所列的值所做的變更會套用至記錄。

已經停用的登入會繼續以記錄形式存在。 但是,如果嘗試連線到 SQL Server,將不會驗證登入。

選取此選項可啟用或停用此登入。 此選項使用 ALTER LOGIN 語句搭配 ENABLE 或 DISABLE 選項。

SQL Server 驗證
只有在選取的登入使用 SQL Server 驗證連線且登入已鎖定時,才會鎖定 [登入] 核取方塊。此設定是唯讀的。 若要解除鎖定已經鎖定的登入,請搭配 UNLOCK 選項執行 ALTER LOGIN。

使用 Windows 驗證與 T-SQL 建立登入

  1. 在物件總管中,連線到資料庫引擎的執行個體。

  2. 在標準列上,選取 [新增查詢] 。

  3. 複製下列範例並將其貼到查詢視窗中,然後選取 [執行]。

    -- Create a login for SQL Server by specifying a server name and a Windows domain account name.  
    
    CREATE LOGIN [<domainName>\<loginName>] FROM WINDOWS;  
    GO  
    
    

使用 T-SQL 驗證SQL Server建立登入

  1. 在物件總管中,連線到資料庫引擎的執行個體。

  2. 在標準列上,選取 [新增查詢] 。

  3. 複製下列範例並將其貼到查詢視窗中,然後選取 [執行]。

    -- Creates the user "shcooper" for SQL Server using the security credential "RestrictedFaculty"   
    -- The user login starts with the password "Baz1nga," but that password must be changed after the first login.  
    
    CREATE LOGIN shcooper   
       WITH PASSWORD = 'Baz1nga' MUST_CHANGE,  
       CREDENTIAL = RestrictedFaculty;  
    GO  
    

如需詳細資訊,請參閱 CREATE LOGIN (Transact-SQL)

後續操作:建立登入之後所採取的步驟

建立登入之後,登入可以連線到SQL Server,但不一定有足夠的許可權可執行任何有用的工作。 下列清單提供常用登入動作的連結。

另請參閱