我不与Microsoft合作,但是我在概念上难以理解AD,ADFS和LDAP如何协同工作。
假设我有一个需要身份提供者的应用程序。 AD和LDAP如何发挥作用?
我对谷歌搜索还没有为这些概念提供清晰的摘要,但是如果有资源,请指向我。
答案 0 :(得分:13)
AD和LDAP包含用户属性,例如名,姓,电话号码。
它们还包含用户登录名和密码以及角色(组),因此可以用于身份验证和授权。
此身份验证主要使用Kerberos。
在Microsoft世界中,AD是主要角色,但是如果您要使用“简单” AD,则可以使用本质上是LDAP的ADAM / LDS。
ADFS(IDP)位于它们之上,并提供了一个联邦层。
联盟是一种概念,通过这种概念,来自公司A的用户可以使用公司A的凭据对公司B上的应用程序进行身份验证。
它使用以下三种联合协议之一:
结果是一个SAML令牌或JWT(OpenID Connect),其中包含该用户来自AD的一组属性。这些要提供的属性列表是通过声明规则在ADFS中配置的,令牌中的属性称为声明。
答案 1 :(得分:6)
上述答案的第一句话并不完全正确 - 不是吗? LDAP 本身是目录服务器使用的协议,包括 AD(和其他目录服务,如 OpenLDAP)。 如果声明改为使用“LDAP 服务器”,我会同意任何符合 LDAP 的目录服务服务器都是一个专用数据库。
我觉得区分很重要(除非我错了),因为这个问题要求像 5 岁孩子一样解释。