zoukankan      html  css  js  c++  java
  • 一个在.net下进行用户模拟的类

    实质上是通过WindowsIdentity.Impersonate()的方法,其中需要调用Win API来获得活用的Handle,用法其实很简单,因为在自己的代码中需要用到,就稍微封装了一下: ?public class IdentityImpersonation { ??[DllImport("advapi32.dll", SetLastError=true)]??public static extern bool LogonUser(String lpszUsername, String lpszDomain, String lpszPassword, ???int dwLogonType, int dwLogonProvider, ref IntPtr phToken); ??[DllImport("advapi32.dll", CharSet=CharSet.Auto, SetLastError=true)]??public extern static bool DuplicateToken(IntPtr ExistingTokenHandle, ???int SECURITY_IMPERSONATION_LEVEL, ref IntPtr DuplicateTokenHandle); ??[DllImport("kernel32.dll", CharSet=CharSet.Auto)]??public extern static bool CloseHandle(IntPtr handle); ??// 要模拟的用户的用户名、密码、域(机器名)??private String _sImperUsername;??private String _sImperPassword;??private String _sImperDomain;??// 记录模拟上下文??private WindowsImpersonationContext _imperContext;??private [...]
  • 相关阅读:
    XML  XmlDocument
    程序集报错
    程序打开网页
    写入文件txt
    读取文件txt
    MSM8953中Android系统添加启动脚本.rc文件
    SELinux基础知识
    嵌入式Linux设备查看USB相关信息
    Linux内核态文件读写相关函数API
    C语言中sscanf()函数相关用法
  • 原文地址:https://www.cnblogs.com/kaneboy/p/2333712.html
Copyright © 2011-2022 走看看