使用 LDAP 的 Alfresco,在 Alfresco 接口中更改用户的密码
Posted
技术标签:
【中文标题】使用 LDAP 的 Alfresco,在 Alfresco 接口中更改用户的密码【英文标题】:Alfresco with LDAP, changing password of a user in Alfresco intefrace 【发布时间】:2021-03-19 09:54:51 【问题描述】:我已成功将 ldap-ad 添加到 Alfresco。现在,当我在 AD 中创建用户时,它与 Alfresco 同步,我得到了一个 Alfresco 用户。问题是,如果用户 Bob(已从 AD 同步)更改了他的密码(在 Alfresco 界面中),密码将在哪个身份验证系统中更改,Alfresco 还是 AD?
如果要在AD中更改密码,那么我没有其他问题,但据我所知,从AD到Alfresco只有一个方向同步,因此Alfresco无法访问AD密码并更改它们。这是否意味着,Alfresco 将为 Bob 创建一个密码并将其存储在自己的身份验证系统中,现在 Bob 可以使用 alfresco 和 AD 密码(新旧密码)登录?最重要的问题:如何避免这种情况?提前致谢。
【问题讨论】:
【参考方案1】:Alfresco 使用身份验证链概念。这意味着您可以为身份验证配置多个系统,如果用户尝试通过配置的链对 Alfresco 进行身份验证,并在一个系统之后尝试另一个系统,直到用户成功通过身份验证,或者如果身份验证在最后一个链成员上失败验证尝试被假定为失败。
Alfresco 带来了它自己的身份验证子系统,可以使用密码在 repo db 中本地创建和存储用户。本地创建的用户(如 admin)存储在本地子系统 alfrescoNtlm
中,您可以在节点浏览器的 user://alfrescoUserStore/
存储中找到该子系统。该商店仅用于内部用户的身份验证。
您在 Alfresco UI 中看到和管理的“用户”类型为 cm:person
,存储在主商店 workspace://SpacesStore
(/sys:system/sys:people/) 中,但根本不包含任何密码。
ldap 同步仅在/sys:system/sys:people/
下的workspace://SpacesStore
中创建用户,并且一旦用户尝试登录 Alfresco,就会通过 authentication.chain
,这在生产中可能看起来像:
kerberos1:kerberos,ldap-ad2:ldap-ad,alfrescoNtlm1:alfrescoNtlm
.
如果在本地 alfrescoUserStore 中找到用户,Alfresco Share 只会为用户提供“更改密码”对话框。 Alfresco 从不更改任何其他系统的密码。
测试你是否理解了一切:如果用户 max
存在于 AD 和本地 alfrescoUserStore 中并在 Alfresco UI 中更改其密码,会发生什么情况? ;-)
【讨论】:
这个用户会有2个密码? :) 或多或少是的:用户max
将能够使用广告或本地密码登录。【参考方案2】:
如果您使用 LDAP 进行身份验证,那么密码将永远不会存储在 Alfresco 中。密码将存储在 LDAP 中,并将通过他们的电子邮件或用户名与 Alfresco 链接。
【讨论】:
以上是关于使用 LDAP 的 Alfresco,在 Alfresco 接口中更改用户的密码的主要内容,如果未能解决你的问题,请参考以下文章
使用 Kerberos SSO 访问同一个 Alfresco 实例的 2 个不同 URL