Active Directory:以 WinXP SYSTEM 使用者身份訪問網路共享
問題:
我無法
Domain Computers
通過在 Windows XP 上作為SYSTEM
帳戶執行的程序訪問 -accesible 網路共享。我有一個 2008R2 域、一個 2003R2 文件伺服器和一組客戶端。
在文件伺服器上,我已使該
Domain Computers
組可以訪問共享。該共享應該包含一個只讀的文件儲存庫( Wpkg ),由使用者執行的系統服務( Wpkg-GP )從域工作站訪問。SYSTEM
現在的問題是,雖然它在 Windows 7 上完美執行,但在 Windows XP 上完全失敗。看來,由於某種原因
SYSTEM
,Windows XP 上的帳戶無法作為電腦進行身份驗證。查看更多詳細資訊。問題:
我做錯了什麼?
這可能是 Windows XP 系統的自然行為嗎?如果是這樣,它可以更改或修復嗎?或者有沒有其他方法可以實現一個場景,其中網路共享
SYSTEM
對電腦上的使用者可見,而使用者無法訪問?細節:
- 該
Domain Computers
組已獲得文件和共享的權限- 我已經檢查了更高的權限,一直
Read
到Full Controll
- 我已經用安裝在 VBox 上的全新、開箱即用的作業系統測試了這個問題
由於問題是由應用程序報告的,我首先開始驗證實際
SYSTEM
使用者權限。在兩個 Windows 版本(7 和 XP)上,我打開了一個提升的cmd
會話模擬SYSTEM
帳戶(使用PsExec -s -i cmd.exe
)並嘗試手動安裝網路共享:net use x: \\myfs.mydomain.com\Wpkg
在 Windows 7 上,驅動器已毫無異議地安裝。但在 Windows XP 上,該命令以錯誤密碼的資訊和新密碼的提示進行響應:
[Windows XP] Password for \\myfs.mydomain.com\Wpkg is incorrect. Please enter password for "myfs.mydomain.com": _
(請注意,這只是一個翻譯,官方英語語言環境可能聽起來不同)
固定的!
問題的根源是文件伺服器沒有將自己註冊到 DC DNS中。看來這顯然是有人故意做的 - 相應的網路介面選項已手動取消選中:
(network interface) -> Properties -> TCP/IP Protocol -> Advanced -> DNS -> [ ] Register this connection's address in DNS
檢查上述選項並發出後
ipconfig /registerdns
:
- 在 DC DNS 記錄中正確註冊的文件伺服器
- Windows XP
SYSTEM
使用者開始正確掛載有問題的共享,而不被要求提供憑據Windows XP 和 Windows 7 的不同行為一定是由於內部實現的一些差異;我猜是 Kerberos,儘管我對 Kerberos 的了解還很膚淺。
我發現添加起來很有趣,當我嘗試
CNAME
從 ie 添加記錄時會發生非常相似的事情。wpkg.domain.mydomain.com
至filesystem.domain.mydomain.com
:在 Windows XP 中,只有最終主機名有效:
C:\WINDOWS\system32>dir \\wpkg[.domain.mydomain.com]\wpkg Access denied. C:\WINDOWS\system32>dir \\fileserver[.domain.mydomain.com]\wpkg [...result OK... ]
…雖然在 Windows 7 上沒有反對使用 CNAME:
C:\WINDOWS\system32>dir \\wpkg[.domain.mydomain.com]\wpkg [...result OK... ] C:\WINDOWS\system32>dir \\fileserver[.domain.mydomain.com]\wpkg [...result OK... ]
請注意,這裡出現
Access denied
錯誤,而不是密碼提示。
在正常的香草環境中,您所做的一切都會奏效。我無法複製你所看到的。我創建了一個共享 (\server\share),授予域電腦讀取訪問權限,並刪除了所有其他 ACE。在 下執行
psexec -s -i -d cmd
,我可以從 XP 和 Win7 電腦訪問共享。您有多確定 XP 電腦是域電腦的成員?預設情況下,所有新電腦帳戶都是域電腦的成員,而不是通過
member
(或memberOf
)屬性,而是作為對象的主組。Domain Computers 組的眾所周知的 RID 是 515。該 RID 值標記在電腦對象的 primaryGroupID 屬性上。您能看一下電腦對象的 primaryGroupID 和 memberOf 屬性,並告訴我存在什麼(如果有的話)嗎?就此而言,如果您願意,您可以發布 XP 和 Win7 電腦的完整輸出嗎?無論哪種方式,獲取資訊的簡單方法是使用以下命令
dsquery * -filter "name=COMPUTER_NAME_GOES_HERE" -attr *
:要嘗試的其他方法是更改共享/NTFS 上的 ACL,一次一個,以允許
Everyone
、Authenticated Users
、Domain Users
和電腦名稱本身。嘗試每一個,看看哪一個(如果有的話)有效。