当前位置:编程学习 > C#/ASP.NET >>

c#有没有办法获取windows账户的密码?

用户名好说。可是如何获得对应用户的密码呢?
windows系统包括win2000,xp,vista, 7,8
问题背景如下:
公司内部已有若干个web系统,用户认证全部都是基于AD的,但都是几年前建的,无支持无代码,很难自行修改了。
现在领导要求所有客户端计算机加入到AD域中,那么既然加入了域,登陆这几个系统时,就不要让用户再输入用户名和密码了。
俺的思路是新建一个网页,该网页加载一个activex控件,该控件获取客户端计算机的用户名和密码,在用户经由该网页访问其它几个web系统时,通过脚本根据所获取的用户名和密码自动在所要登录的系统上执行登录,从而实现单点登录的效果。这是我能想到的最好的方式了。
但一个前提就是能够获得windows的密码。  --------------------编程问答-------------------- 一个网页就获取机器的秘码还了得?

既然都加入了域,就用域验证的方式就行了。 --------------------编程问答-------------------- c#要是有这本事 那还了得 --------------------编程问答--------------------
引用 1 楼 cuit 的回复:
一个网页就获取机器的秘码还了得?

既然都加入了域,就用域验证的方式就行了。

怎么用域验证?
这几个系统都是早先建的,配置不敢改,代码没有。 --------------------编程问答--------------------
引用 1 楼 cuit 的回复:
一个网页就获取机器的秘码还了得?

既然都加入了域,就用域验证的方式就行了。

当然不只是用网页了,activex干啥的?
如果有办法能从AD服务器上获取所有用户的密码也行。 --------------------编程问答--------------------
引用 1 楼 cuit 的回复:
一个网页就获取机器的秘码还了得?

既然都加入了域,就用域验证的方式就行了。


哈哈,有理  .
一个网页就能获取电脑的密码了, 那我们这些上网的人还敢浏览网页么 ?
大家都成了网站的肉鸡了 . --------------------编程问答--------------------
引用 5 楼 chenhui389 的回复:
引用 1 楼 cuit 的回复:一个网页就获取机器的秘码还了得?

既然都加入了域,就用域验证的方式就行了。

哈哈,有理  .
一个网页就能获取电脑的密码了, 那我们这些上网的人还敢浏览网页么 ?
大家都成了网站的肉鸡了 .

呵呵,别打岔,回到我的问题上来吧。
如果获取不了,那么通过gina修改windows启动时的用户登录对话框是否可行?关键是有2000、xp、2003、7、8,万一把人家的操作系统搞挂了,又得背骂名。 --------------------编程问答-------------------- 公司内部已有若干个web系统,用户认证全部都是基于AD的,但都是几年前建的,无支持无代码,很难自行修改了。
现在领导要求所有客户端计算机加入到AD域中,那么既然加入了域,登陆这几个系统时,就不要让用户再输入用户名和密码了。

之前的web系统是怎么个登陆方式? --------------------编程问答-------------------- 啥叫“单点登录”?这个还是要弄弄清楚。

要想自动输入密码,整个什么“按键精灵”编写脚本即可。 --------------------编程问答--------------------
引用 7 楼 cuit 的回复:
公司内部已有若干个web系统,用户认证全部都是基于AD的,但都是几年前建的,无支持无代码,很难自行修改了。
现在领导要求所有客户端计算机加入到AD域中,那么既然加入了域,登陆这几个系统时,就不要让用户再输入用户名和密码了。

之前的web系统是怎么个登陆方式?

通过登录网页输入用户名密码登录啊(不是IIS所谓的windows集成认证,也不是TOMCAT的NTLM之类由浏览器弹出对话框的认证),只不过系统后台是连接到AD上比对看用户信息是否正确。
--------------------编程问答--------------------
引用 8 楼 sp1234 的回复:
啥叫“单点登录”?这个还是要弄弄清楚。

要想自动输入密码,整个什么“按键精灵”编写脚本即可。


几百个甚至数千个不通的账号密码,显然不可取 ,一个个去设置什么按键那跟自己输入有什么区别呐 ?
程序的目的是简化操作提高效率,不是专门搞得更繁琐. --------------------编程问答--------------------
引用 8 楼 sp1234 的回复:
啥叫“单点登录”?这个还是要弄弄清楚。

要想自动输入密码,整个什么“按键精灵”编写脚本即可。

在这里,“单点登录”就是指员工的计算机登录到域之后,访问单位内的几个web系统不需要再输入用户名密码。
而因为都是遗留系统,没有代码,所以我想的方法就是想办法获取用户名和密码,然后由我通过脚本来模拟他们手工登录的过程。 --------------------编程问答--------------------
引用 10 楼 chenhui389 的回复:
引用 8 楼 sp1234 的回复:啥叫“单点登录”?这个还是要弄弄清楚。

要想自动输入密码,整个什么“按键精灵”编写脚本即可。

几百个甚至数千个不通的账号密码,显然不可取 ,一个个去设置什么按键那跟自己输入有什么区别呐 ?
程序的目的是简化操作提高效率,不是专门搞得更繁琐.

只要能实现我的目标,不管黑猫白猫都行。 --------------------编程问答-------------------- 各位,IIS如果是匿名访问的时候,怎么获取客户端是否是域用户啊?如何获取客户端的信息,试了很多方法都是只有集成windows身份验证后才能获取到客户端的用户,谢谢! --------------------编程问答--------------------
引用 3 楼 lhlinux 的回复:
引用 1 楼 cuit 的回复:一个网页就获取机器的秘码还了得?

既然都加入了域,就用域验证的方式就行了。
怎么用域验证?
这几个系统都是早先建的,配置不敢改,代码没有。


代码都不能改那还怎么做调整???
单点登录也只是对已有系统不需要做大的修改,但登陆部分的小修改还是要做的 --------------------编程问答--------------------
概念上稍有偏差就是十万八千里。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,