gpt4 book ai didi

java - Liferay授权

转载 作者:行者123 更新时间:2023-11-30 08:23:46 25 4
gpt4 key购买 nike

我需要针对组织 LDAP 实现 liferay 身份验证。用户成功登录后,我希望根据在 liferay 中创建的本地组检查用户。

例如某些团队中的用户应该只能进入应用程序。由于 LDAP 中没有任何东西可以将这些用户与 LDAP 中的其他用户区分开来,我需要在 liferay 中本地实现一些东西。

当用户登录时,他/她应该根据 LDAP 进行身份验证,然后应该查找本地 liferay 组以检查用户是否是该组的一部分。这个组应该可以由 liferay 管理员配置。只有当他/她是该组的一部分时,才应显示带有数据的应用程序主页。

关于此的任何指示都会有所帮助。谢谢。

最佳答案

这是我的理解:

  1. 用户存储在 LDAP 中。
  2. 用户未在 LDAP 中分类。不存在 ldap 组。
  3. 因此,当您针对 LDAP 进行身份验证时,LDAP 中的所有用户都将登录到 Liferay。
  4. 但是您想要的是,只有属于 Liferay 中特定组的用户才能登录,而其他用户则不能。

如果这是你想要的,那么这里是我的几点建议:

  1. 最好的办法是拥有groups in LDAP本身。在维护方面,这会更好,因为身份验证已经通过 LDAP 进行。这是您可以 leverage Liferay with LDAP groups 的方法.当然,如果您采用这种方法,则需要通过任何 LDAP 客户端(如 LDAP admin 或 jExplorer)手动将用户分配给每个组。
  2. 但如果这不可能,那么您可以通过 Organizations 对用户进行分组或 UserGroups或者可能是 Site (with or without pages)在 liferay 中。
  3. 从 LDAP 成功验证后,您可以检查特定用户是否属于所需的组织或用户组或站点。您可以使用 LoginPostAction hook为此目的。
  4. 如果用户不是所需组的成员,那么您可以将他从系统中注销,然后根据您的要求将他重定向到登录页面或其他页面。
  5. 您还可以设置一个 Hook 来防止更新和删除用户组、组织或站点,这样管理员就不会意外删除或更新可能导致身份验证失败的相关组。

希望这对您有所帮助,让我知道我的理解是否正确。

关于java - Liferay授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23421740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com