問題:如何獲取當前Windows用戶的*網絡*身份,而不是他們的交互式登錄身份?
什麼是.NET(或P/Invoke的非託管的Windows API)方法調用來獲取當前進程的網絡身份用來連接到SSPI認證的網絡服務,如作爲SQL Server?
具體使用情況我心目中就是一個可以在非加入域的機器上工作,並使用runas /noprofile /netonly /USER:DOMAIN\username
推出它使用DOMAIN\username
身份進行網絡身份驗證,而不是他們的地方MACHINE\username
記錄過程 - 身份。
我想要的方法調用讓我在這裏傳遞給RUNAS
的DOMAIN\username
標識。
謝謝!
要清楚,我不尋找的方法調用來獲取當前用戶的本地登錄的身份(這可能比網絡標識不同)。這不包括System.Security.Principal.WindowsIdentity.GetCurrent().Name
和Environment.UserName
和可能System.Threading.Thread.CurrentPrincipal.Identity.Name
被接受的答案。除非我在這裏顯示錯誤,否則我會對任何錯誤地指出這些解決方案的答案進行倒退。 :)
你的問題有點混亂。您是否試圖從啓動的流程中獲取用戶名? –
是的。這個代碼應該被執行的過程是'runas'ed –
它*可能*排除他們?你有沒有試過它們?而你最後一點聽起來有點對抗,因爲你在尋求別人的幫助。如果你已經嘗試了一些事情(就像你聽到的那樣),那麼你當然應該透露一下,以幫助你更輕鬆地解決你的問題,但是IMO沒有必要走得太遠。 –