30
A
回答
26
模拟需要调用一些原生API(即,LogonUser的),所以它可能不值得发布3页包装代码。此页面有一个完整的工作示例:http://platinumdogs.wordpress.com/2008/10/30/net-c-impersonation-with-network-credentials/
请注意,模拟具有重要的安全性考虑因素。确保您遵循最佳做法。
10
这article解释它很简洁:
下面是文章的代码片段:
IntPtr accessToken = IntPtr.Zero;
....
//You have to initialize your accessToken with API calling
....
WindowsIdentity identity = new WindowsIdentity(accessToken);
WindowsImpersonationContext context = identity.Impersonate();
...
// Now your code is using the new WindowsLogin and you can do what ever this login can do
...
//Now you can return to your current login of Windows
context.Undo();
20
0
是模仿有助于以不同的用户运行一些代码。它在我的情况下工作正常。 (感谢米兰Matějka)
我还发现了一个Ref链接。希望它可以帮助您轻松地从nuget获得包装: http://iamfixed.blogspot.de/2017/11/run-code-as-different-user-in-c-from.html
相关问题
- 1. 以不同的用户身份运行powershell代码
- 2. 不能以不同的用户身份运行C#进程
- 3. 如何以不同用户的身份运行mule运行时?
- 4. 以根用户身份运行JNI本机代码(Mac)
- 5. 以root用户身份运行C程序,无密码
- 6. 在FreeBSD下以不同的用户身份运行
- 7. 在Visual Studio中以不同的用户身份运行测试
- 8. 在Eclipse中以不同的用户身份运行Tomcat
- 9. 如何以不同的用户身份运行'at'?
- 10. 在Windows上以不同的用户身份运行shell_exec
- 11. 以不同的用户输入运行C++代码的脚本
- 12. 使用量角器以不同用户身份运行IE
- 13. 在vb.net中以不同用户身份运行新进程
- 14. UFT以普通用户身份运行不同于管理员
- 15. C#如何以不同用户的身份运行msi安装包
- 16. p4以不同用户身份同步
- 17. 如何以root用户的cronjob身份从不同的用户运行命令?
- 18. 以用户身份运行Intellij
- 19. 以登录用户身份运行cronjob
- 20. 使Hadoop以Kerberos用户身份运行
- 21. 以非root用户身份运行Nginx
- 22. websphere以用户身份运行servlet
- 23. php-cgi以根用户身份运行
- 24. 以非root用户身份运行Docker
- 25. 以当前用户身份运行IIS
- 26. 以root用户身份以编程方式运行C程序
- 27. 以不同的用户身份登录ASP.MVC不会改变用户身份
- 28. LocalSystem Service如何以用户身份运行应用程序[C#]?
- 29. 以用户身份从Visual Studios进行调试,以管理员身份运行
- 30. 以root用户身份运行C++程序
文章中的代码已不存在。 – 2016-12-02 14:58:42