在Active Directory中存储公共网站的用户

Jam*_*ter 1 architecture authentication authorization web-applications active-directory

我正在为基金/养老金经理制定系统架构.我们提供两个ASP.NET MVC Web应用程序; 一个允许养老基金的成员登录和检查他们的余额,管理他们的投资等,另一个允许雇主代表雇员(成员)向基金捐款.还有通过Intranet提供的内部应用程序.

我们一直在考虑使用Active Directory来存储,认证/授权不仅是内部用户(已经使用AD登录域和资源授权),而是用于成员和雇主用户帐户.成员和雇主用户帐户将位于内部用户的不同层次结构(甚至可能是不同的AD实例?)中.

但是我想知道这是否是AD的最佳用例......鉴于AD是一种"内部"资源,它是否应该用于保存"外部"用户的auth详细信息(替代方案是数据库中的USERS表) )?

好处是:AD专为保存此类数据而设计和优化,ASP.NET应用程序可轻松集成AD授权,可能存在用于处理数据的现有工具(密码重置等).

有什么风险?

Joe*_*ton 5

我建议不要混合使用内部和外部用户.从经验来看,它打开了许多安全问题.创建单独的身份验证系统可能会更好,一个使用AD直接对内部域使用AD,另一个使用仅为保留外部用户而设计的ADAM目录.(即 - 内部用户应使用NTLM与AD进行身份验证,以确保kerberos加密登录,而表单可用于ADAM实例).

AD很容易集成,如果由于网络集块而不希望直接集成,您总是可以尝试使用LDAP://来实现相同的身份验证结果.