验证域用户(C#)

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;

namespace MACAddressMgmtApp.ServiceImplementations
{
    class ValidateUserHelper
    {

        private static int LOGon32_LOGon_INTERACTIVE = 2;
        private static int LOGon32_PROVIDER_DEFAULT = 0;
        private static IntPtr tokenHandle = new IntPtr(0);

        [DllImport("advapi32.dll")]
        private static extern bool LogonUser(string lpszUsername,
            string lpszDomain,
            string lpszPassword,
            int dwLogonType,
            int dwLogonProvider,
            ref IntPtr phToken);

        public static bool Verify(string userName, string pwd, string domain)
        {
            bool boolResult = false;
            tokenHandle = IntPtr.Zero;
            boolResult = LogonUser(userName, domain, pwd, LOGon32_LOGon_INTERACTIVE, LOGon32_PROVIDER_DEFAULT, ref tokenHandle);
            return boolResult;
        }

    }
}
时间: 2024-10-31 02:15:20

验证域用户(C#)的相关文章

Windows Azure SSTP模式VPN Client使用AD域用户验证登录

我们上面一篇文章介绍了,如何在windows azure下搭建SSTP模式的vpn服务,搭建配置后我们遗留了一个,什么问题呢,我们都知道,一般的独立vpn是使用独立的账户及密码的,尤其是托管到外面的vpn服务器,无法使用AD域用户验证.这样会造成vpn用户拥有两套用户及密码,管理起来很不方便.再说说我的环境,我的环境是把vpn服务器放在了windows azure上,这样算来也是托管类型的,但是windows azure毕竟是微软出的,AD也是微软的,在设计上肯定考虑了,最终呢托管到window

vcneter5.5添加域用户权限

安装完vCenter5.5之后,发现不能添加域用户来管理vSphere,查了文档,原来是现在安装vCenter Single Sign-on的时候创建了一个默认域:vsphere.local. 添加用户时,没有域用户可以选择添加,如图: 要添加域用户权限,必须添加标识源,添加标识源的方法如下: 使用[email protected]通过web client登陆vCenter: https://192.168.2.202:9443/vsphere-client/ 配置SSO用户认证标识源 登录后,

【AD】取消普通域用户帐号加域权限&授权特定普通域用户加域权限

通常来说,没有做什么特别的设定的话,都是手动加域,且使用的是管理员帐号,这种情况下是有风险的,容易被人记忆密码.所以,如果可以设置一个普通用户帐号,专门用来执行加域操作,就会降低此类风险.其实默认情况下,域每一个普通帐号都可以将10台电脑加入域内,这是一个很大的隐患.估计很多人都没有试过吧. 加域分两种,一种是将新电脑加入域内,一种是将已经加入过域的电脑,因为故障无法登录域或手动退域,原计算机帐号仍在的情况下加入域建立连接.第二种情况又分上次加域使用的帐号和当前加域使用的帐号是否相同且权限是否一

在非域环境中修改域用户密码的方法

前几天有个单位,新配置了一台服务器,做文件服务器,为网络中提供共享文件夹服务,该单位大约有50多个用户.服务器采用Windows Server 2008 R2操作系统,升级到Active Directory,为单位每个职工创建了一个用户名,在服务器上除了为每个用户创建一个"共享文件夹"保存个人数据外,还创建了"公共"共享文件夹,保存单位的数据,并且在公共文件夹中创建了若干子目录,通过用户权限,设置只让指定用户上传.修改其中的文件. 在开始规划的时候,是计划让单位的所

Windows域用户漫游设置配置文件最简单的完成方法!

一. 首先要知道域用户漫游是做什么的? 在一个域中,的所有域用户都可以登录一台加了这了域的计算机!但是每次使用时文件数据都是临时的.如果想让域用户的数据不管在哪台域的成员计算机上登录的时候都能加载,这时就需要域用户漫游了!不管在哪台计算机登录,自己的数据都在,让数据跟着人走! 二.    接下来是实验环境:一台DC(2008 R2) .两台加了域的成员计算机(win7和winxp)用来验证! 拓扑图如下! 三. 实现步骤 1.在DC上创建一个用户"张三" 2.再在电脑中创建一个用来存放

JAVA 通过LDAP获取AD域用户及组织信息

因为工作需求近期做过一个从客户AD域获取数据实现单点登录的功能,在此整理分享. 前提:用户可能有很多系统的情况下,为了方便账号的统一管理使用AD域验证登录,所以不需要我们的系统登录,就需要获取用户的AD域组织和用户信息,实现域认证和单点登录. LDAP: LDAP是轻量目录访问协议 AD域:微软基于域模式的集中化管理 1.常规的AD域登陆验证 LdapContext dc = null;             Hashtable<String, String> env = new Hasht

Java使用LdAP获取AD域用户

随着我们的习大大上台后,国家在网络信息安全方面就有了很明显的改变!所以现在好多做网络信息安全产品的公司和需要网络信息安全的公司都会提到用AD域服务器来验证,这里就简单的研究了一下! 先简单的讲讲AD域和LdAP目录访问协议:AD(active directory)活动目录,动态的建立整个域模式网络中的对象的数据库或索引,协议为LDAP,安装了AD的服务器称为DC域控制器,存储整个域的对象的信息并周期性更新!其中的对象分为三大类--资源(如印表机).服务(如电子邮件).和人物(即帐户或用户,以及组

ADHelper C#域用户操作(转)

using System; using System.Collections.Generic; using System.DirectoryServices; using System.Linq; using System.Runtime.InteropServices; using System.Security.Principal; using System.Text; using System.Threading.Tasks; namespace ADS.BLL { public clas

域用户加入域的权限

普通用户加入域的权限问题.我现在想使用一个普通的域用户,让他能够有无数次加入域的权限,并不限于10次加入域的次数,请问有什么好的方法可以实现呢?然后禁用其他所有域用户加入域的权限,请问又如何实现比较好. 回答:根据您描述,您想知道如何让一个用户拥有大于默认10次把计算机加入域的权限.我们可以通过以下方法来实现这个目的: 1.打开组策略编辑器,双击默认域控制器策略 2.展开找到如下策略:计算机配置 | Windows设置 | 安全设置 | 本地策略 | 用户权限分配 | 将工作站添加到域 3.双击