我正在使用OpenAM 13为一套应用程序提供单点登录功能。身份验证本身由LDAP提供,因为此单点登录范围之外的其他应用程序使用现有LDAP存储。
每个用户LDAP记录都添加了一个名为userattrib1的自定义属性。当此属性设置为999时,不允许用户登录单点登录,对于允许其登录的所有其他值。我意识到这是一个不寻常的设置,但这是预先存在的应用程序的一部分。
我如何配置OpenAM 13以支持此检查?我想避免在最终用户应用程序中执行此检查,因为有几个应用程序我必须添加检查。
答案 0 :(得分:0)
如果使用LDAP身份验证模块,您可以指定用户搜索过滤器以利用自定义属性。
然而,不像
那样的搜索过滤器userattrib1 != 999
通常会导致非索引搜索并且无法真正使用,相反,您应该检查您拥有多少个不同的“传递”值,然后在复合过滤器中使用它,如
(|(userattrib1=123)(userattrib1=124)(userattrib1=125)(userattrib1=126))
可能你甚至可以将值“分组”以使用像
这样的子字符串过滤器userattrib1=12*
取决于所使用的过滤器,您需要为属性 userattrib1 配置的等式索引或/和子字符串索引