【发布时间】:2014-10-23 19:40:10
【问题描述】:
我从一开始就是 .Net 开发人员。但最后一次很有趣。我为自己的目的编写了一个网络基础 dll 并开始编写合适的 iOS 客户端应用程序。一切正常,但现在我有点想自己不管理用户数据,而是使用 Active Directory 的现有数据。将纯文本用户名和密码从应用程序发送到服务器然后进行验证不会有任何问题,但这并不像我想要的那样安全。我个人最喜欢的方式是:
- 将用户名从应用程序发送到服务器
- 通过用户名和挑战从 AD 获取挑战密码哈希
- 向客户发送挑战
- 对密码进行哈希处理
- 将哈希发送回服务器并检查哈希是否匹配
非常简单直接的方式。我不必处理证书并且可以提供基本的安全性。我知道,在现代,这不是最安全的方式。但这足以满足我的需要。
我的问题是,有没有办法从广告中获取用户的散列密码,我是否会收到挑战?或者有没有其他简单的方法来提供一种简单安全的方法来验证不在本地网络中的用户?
非常感谢您
最好的问候 弗洛里安
【问题讨论】:
标签: c# security sockets active-directory