zoukankan      html  css  js  c++  java
  • 验证域账户的用户名和密码

    //验证需要的方法。

    public static bool IsAuthenticated(string domain, string username, string pwd)
        {
            string strPath = "LDAP://OU=People,DC=RCOMM,DC=local";
            String domainAndUsername = domain + @"\" + username;
            DirectoryEntry entry = new DirectoryEntry(strPath, domainAndUsername, pwd);

            try
            {    //Bind to the native AdsObject to force authentication.           
                Object obj = entry.NativeObject;

                DirectorySearcher search = new DirectorySearcher(entry);

                search.Filter = "(SAMAccountName=" + username + ")";
                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();

                if (null == result)
                {
                    return false;
                }

                //Update the new path to the user in the directory.
                strPath = result.Path;
                //_filterAttribute = (String)result.Properties["cn"][0];
            }
            catch (Exception ex)
            {
                //throw new Exception("Error authenticating user. " + ex.Message);
                return false;
            }

            return true;
        }

     

    //调用

    if (LoginLayer.IsAuthenticated("kefeng.rcomm.local", "someguy", "admin"))
            {
                Response.Write("验证成功!");
            }
            else
            {
                Response.Write("验证失败!");
            }

  • 相关阅读:
    抽象工厂模式
    工厂方法模式
    简单工厂模式
    多例模式
    深入分析 Java 中的中文编码问题
    PipedInputStream和PipedOutputStream详解
    单例模式
    Java IO和NIO文章目录
    wsdlLocation可以写成项目的相对路劲吗
    ssh框架配置事务管理器
  • 原文地址:https://www.cnblogs.com/binaryworms/p/1726961.html
Copyright © 2011-2022 走看看