初始源码如下:

public bool open(String username,String password)

{

try

{

string url = $"ldap://{m_host}:{m_port}/{m_baseDn}";

String m_user = $"{username},{m_userDn}";

DirectoryEntry entry = new DirectoryEntry(url, m_user, password, AuthenticationTypes.None);

if (entry == null)

{

return false;

}

else

{

try

{

object native = entry.NativeObject;

return true;

}

catch (System.Exception ex)

{

throw new Exception(ex.Message);

}

}

}

catch(Exception ex)

{

throw ex;

}

}

结果始终出现Exception,异常代码如下:0x80005000

在网上查阅相关信息均是有关IIS设置的问题。

那么问题就来了,客户端访问ldap服务(使用ldap admin或ladp brower都可以正常访问,因此服务端不存在问题),不可能客户端还需要存在IIS,因此这个问题不可能是像网上所述。

而且本人使用java写了ldap访问的代码,一次验证通过。

此时突然一个想法一闪而过,DirectoryEntry构造函数中参数path(即代码中变量url)起头大小写的问题。(虽然java中使用小写ladp一次验证通过,可是不代码C#就可以通过)经过验证,果然就是这个问题。Bravo,经过自己搭建OpenLdap服务,学习ldap admin的使用,一天半终于搞定。

正确源码:

public bool open(String username,String password)

{

try

{

string url = $"LDAP://{m_host}:{m_port}/{m_baseDn}";

String m_user = $"{username},{m_userDn}";

DirectoryEntry entry = new DirectoryEntry(url, m_user, password, AuthenticationTypes.None);

if (entry == null)

{

return false;

}

else

{

try

{

object native = entry.NativeObject;

return true;

}

catch (System.Exception ex)

{

throw new Exception(ex.Message);

}

}

}

catch(Exception ex)

{

throw ex;

}

}

解决LDAP客户端统一认证DirectoryEntry出现 Ox80005000的问题相关推荐

  1. [原创]django+ldap实现统一认证部分一(django-auth-ldap实践)

    前言 接之前我的文章,django+ldap+memcache实现单点登录+统一认证 ,ldap部署相关,ldap双机\LAM配置管理\ldap备份还原,目前来说,我们已经有了高可用性的ldap环境了 ...

  2. LDAP简述及统一认证说明

    LDAP简述 LDAP相关概念 1)轻型目录访问协议(Lightweight Directory Access Protocol),LDAP是一种通信协议,LDAP能够支持TCP/IP.协议就是标准, ...

  3. [原创]django+ldap+memcache实现单点登录+统一认证

    前言 由于公司内部的系统越来越多,为了方便用户使用,通过django进行了单点登录和统一认证的尝试,目前实现了django项目的单点登录和非django项目的统一认证,中间波折挺多,涉及的技术包括dj ...

  4. 统一账号/统一认证系统的引入和搭建(LDAP)

    为什么需要统一账号/统一认证? 没人喜欢记忆一大堆混乱的账号和密码,员工不喜欢,企业更不喜欢. 企业要高效解决业务和研发问题,必须在初创期规划搭建必要的企业软件和研发工具,也就是进行IT基础设施中软件 ...

  5. 宁盾目录成功对接Coremail邮箱,为其提供LDAP统一认证和双因子认证

    近日,宁盾与 Coremail 完成兼容适配,在 LDAP 目录用户同步.统一身份认证及双因子认证等模块成功对接.借此机会,双方将加深在产品.解决方案等多个领域的合作,携手共建信创合作生态,打造信创 ...

  6. Linux下LDAP统一认证解决方案

    企业内部需要认证的服务很多,员工需要记住很多的密码, 即使对这些服务进行相同的密码设置,也存在很大的安全隐患.笔者目前工作的企业就是如此,每一个新员工的到来管理员都要初始化很多密码,而这些密码都被设置 ...

  7. 【.NET Core项目实战-统一认证平台】第十章 授权篇-客户端授权

    上篇文章介绍了如何使用Dapper持久化IdentityServer4(以下简称ids4)的信息,并实现了sqlserver和mysql两种方式存储,本篇将介绍如何使用ids4进行客户端授权. .ne ...

  8. 【.NET Core项目实战-统一认证平台】第六章 网关篇-自定义客户端授权

    上篇文章[.NET Core项目实战-统一认证平台]第五章 网关篇-自定义缓存Redis 我们介绍了网关使用Redis进行缓存,并介绍了如何进行缓存实现,缓存信息清理接口的使用.本篇我们将介绍如何实现 ...

  9. signature=4f0a1c9773fc07031e260b016c514c92,基于LDAP的统一身份认证系统设计与实现

    摘要: 随着IT技术和网络技术的蓬勃发展,各种基于网络的应用系统已在当前的商业环境中大量存在.因商业应用业务需要,用户每天可能需要登录到许多不同的应用系统.为保证安全性,通常各系统均要求对用户进行身份 ...

  10. ldap 统一认证 java_如何在你的系统里集成LDAP统一认证

    一.为什么需要统一认证 日常办公经常会有多套系统,如果各个系统各自维护一套用户认证,用户需要记住多个用户名密码. 系统各自管理用户认证的方式,不但会有重复建设的问题,用户体验也会差,经常会有用户忘记密 ...

最新文章

  1. python三方库 importlib导入API用法 相对导入 绝对导入
  2. 硕士Nature一作谈回乡当公务员:考公竞争激烈,科研经历是宝贵财富
  3. const的使用CC++
  4. jQuery插件ASP.NET应用之AjaxUpload
  5. 如何禁用win7的ASLR
  6. plot画分段函数_python画图函数大全
  7. 力扣——字符串转换整数(atoi)
  8. JEECGJWT异常捕获强化处理
  9. matconvnet在MATLAB2013配置过程中遇到的问题
  10. Spring中使用aop操作需要用到的aspectjweaver-1.8.7.jar包
  11. 闲聊人工智能产品经理(AIPM)—定义人工智能产品经理
  12. 用天平找次品的算法题,即三等分算法
  13. 爬取中国地震台网以及地震科学数据
  14. javascript运算符——条件、逗号、赋值、()和void运算符 (转载)
  15. 基于51单片机的烟雾温度火灾报警器 LCD1602显示proteus仿真
  16. AS 使用Statistic插件统计代码行数
  17. android studio代码格式化设置,Android studio kotlin代码格式化操作
  18. 联想拯救者y7000电池耗电快_联想拯救者Y7000游戏本测评之温度、续航双测评
  19. 20190831每日一句 超越你的舒适区,突破自我,继续前进!
  20. SpringBoot配置多数据源数据库

热门文章

  1. Window应急响应(五):ARP病毒
  2. 旧版本ios软件整理
  3. SQL Server 2012 安装图解教程(附sql2012下载地址)
  4. 图像分割并存储 matlab,用于面积增长的Matlab图像分割程序
  5. 高德地图api中的adcode城市编码
  6. 电脑网页截屏怎么截长图?借助Safari对整个网页进行长截图
  7. python实现多人脸识别
  8. ubuntu20.04安装搜狗输入法
  9. 交换机VLAN工作模式介绍
  10. 华展云-让展览更高效 2017第6届中国国防信息化装备与技术博览会会刊(参展商名录)