Sql-Server

消息 15404,級別 16,狀態 10,過程 xp_logininfo - 缺少權限

  • August 7, 2019

我在美國有一台伺服器,我不是域管理員,我的權限僅限於sql server- 我所在的地方sysadmin

在將一些數據庫遷移到新伺服器後,我注意到我需要返回舊伺服器以獲取我的登錄名和相關權限之一。

當我執行以下命令時:

EXEC xp_logininfo 'gplondon';  

我得到:

消息 15404,級別 16,狀態 10,過程 xp_logininfo,第 62 行

$$ Batch Start Line 6 $$無法獲取有關 Windows NT 組/使用者“gplondon”的資訊,錯誤程式碼 0xffff0002。

我知道我在 sql server 中擁有執行 xp_logininfo 的所有權限

但是缺少哪些其他權限使我(或該伺服器上的 sql server 服務)無法詢問活動目錄?

換句話說,以前一切正常,現在缺少什麼權限?

在此處輸入圖像描述

檢查錯誤日誌後

xp_readerrorlog 0, 1, "error" , NULL, NULL, NULL, N'desc'

沒有發現與上述相關的錯誤 在此處輸入圖像描述

然後檢查錯誤消息:

BEGIN TRY  
EXEC xp_logininfo 'gplondon'; 
END TRY  
BEGIN CATCH  
   SELECT ERROR_NUMBER() AS ErrorNumber
         ,ERROR_MESSAGE()
END CATCH; 

15404

無法獲取有關 Windows NT 組/使用者 ‘gplondon’ 的資訊,錯誤程式碼 0xffff0002。

調查: 15404 與 Active Directory

快速選擇sys.server_principals

select * from sys.server_principals
where name = 'gplondon'

我發現了一些明顯的東西:gplondon在活動目錄中不存在,因為它是sql login

在此處輸入圖像描述

來自xp_logininfo 文件的註釋

如果 account_name 是與 SQL Server 登錄無關的有效 Windows 使用者或組,則返回空結果集。如果 account_name 無法辨識為有效的 Windows 使用者或組,則返回錯誤消息。

引用自:https://dba.stackexchange.com/questions/244752