[英]impersonate multiple users at the same time
我正在.net中提供一項服務,該服務將文件從一個域(域A)復制到另一個域(域B),兩個域都需要憑據才能連接到它們,因此我正在使用模擬功能。
using (new Impersonator(usr_name_source, domain_source, password_source))
每次模擬僅在一個域中起作用,因此實際上我無法工作如何同時模擬兩個域以復制文件,因此我正在嘗試:
using (new Impersonator(usr_name_source, domain_source, password_source))//server authentication
{
using (new Impersonator(usr_name_target, domain_target, password_target))//server authentication
{
DeleteOldFiles(targetPath);
Copy(sourcePath, targetPath);
}
}
但是它不能像我模擬內部new Impersonator(usr_name_target, domain_target, password_target)
一樣工作new Impersonator(usr_name_target, domain_target, password_target)
它忘記了外部模仿。
有誰知道如何在不映射驅動器等情況下做到這一點?
您一次只能模擬一個用戶,因此您當前的解決方案將不起作用。 基本上,您嘗試連接到兩個不同的網絡資源。 您可以P /調用WNetAddConnection2函數以連接到不同域的網絡資源並根據需要執行操作。 有關WNetAddConnection2的詳細信息,請參見此處: https ://msdn.microsoft.com/zh-cn/library/windows/desktop/aa385413(v = vs.85).aspx
查看這篇文章,以了解您如何P /調用WNetAddConnection2: 如何在連接到網絡共享時提供用戶名和密碼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.