利用传递验证向用户和管理员授予通过一个或多个不同密码进行访问的权限。
Identity Manager 通过实现以下方法来管理验证:
登录应用程序(登录模块组的集合)
登录模块组(登录模块的有序集)
登录模块(针对每个已分配的资源设置验证,并指定验证的多个成功登录条件之一)
登录应用程序定义登录模块组的集合,登录模块组进一步定义用户登录 Identity Manager 时使用的登录模块的集合和顺序。每个登录应用程序都由一个或多个登录模块组构成。
登录时,登录应用程序会检查其登录模块组集。如果只设置了一个登录模块组,则会使用这个组,并按组中登录模块的定义顺序处理包含的登录模块。如果登录应用程序中含有多个定义的登录模块组,则 Identity Manager 将检查应用于每个登录模块组的登录约束规则以确定要处理的组。
可以将登录约束规则应用于登录模块组。对于登录应用程序中的每个登录模块组集,如果只有一个组,则不能应用登录约束规则。
当确定要处理一个集合中的哪一个登录模块组时,Identity Manager 评估第一个登录模块组的约束规则。如果成功,则会处理该登录模块组。如果失败,则将依次评估每个登录模块组,直到约束规则成功或评估没有约束规则的登录模块组(随即使用该组)。
如果登录应用程序包含多个登录模块组,则应将没有登录约束规则的登录模块组放在集合的最后位置。
下例是基于位置的登录约束规则,此规则从 HTTP 标头获取请求者的 IP 地址,然后检查该地址是否位于 192.168 网络。如果 IP 地址中有 192.168.,则此规则将返回值 True 并选择此登录模块组。
<Rule authType=’LoginConstraintRule’ name=’Sample On Local Network’> <match> <ref>remoteAddr</ref> <s>192.168.</s> </match> <MemberObjectGroups> <ObjectRef type=’ObjectGroup’ name=’All’/> </MemberObjectGroups> </Rule> |
从菜单栏中选择“安全性”->“登录”以访问“登录”页。
登录应用程序列表显示:
定义的每个 Identity Manager 登录应用程序(界面)
构成登录应用程序的登录模块组
每个登录应用程序的 Identity Manager 会话超时限制设置
在 "Login" 页中,您可以:
创建自定义登录应用程序
删除自定义登录应用程序
管理登录模块组
要编辑登录应用程序,请从列表中选择相应的应用程序。
在“修改登录应用程序”页中,可以为每个 Identity Manager 登录会话设置超时值(限制)。选择小时、分钟和秒数,然后单击“保存”。您建立的限制将显示在登录应用程序列表中。
可以为每个 Identity Manager 登录应用程序设置会话超时。用户登录到 Identity Manager 应用程序之后,将使用当前配置的会话超时值计算用户会话将来因不活动而超时的日期和时间。然后将计算出来的日期与用户的 Identity Manager 会话一起存储,以便在每次提出请求时可以检查此日期。
如果登录管理员更改了登录应用程序会话超时值,则该值会在将来的所有登录中生效。现有会话的超时时间将取决于用户登录时的有效值。
为 HTTP 超时所设置的值将影响所有 Identity Manager 应用程序,并优先于登录应用程序会话超时值。
在“创建登录应用程序”和“修改登录应用程序”页中,可以选择“禁用”选项以禁用登录应用程序,从而禁止用户进行登录。如果用户尝试登录到已禁用的应用程序,则会将该用户重定向到备用页面,并指出当前禁用了该应用程序。可以通过编辑自定义目录来编辑显示在此页面上的消息。
只有取消选择该选项才能解除对登录应用程序的禁用。由于存在安全保护,您不能禁用管理员登录。
登录模块组列表显示:
每个登录模块组
构成登录模块组的各个登录模块
登录模块组是否包含约束规则
在 "Login Module Groups" 页中可以创建、编辑和删除登录模块组。从列表中选择一个登录模块组以进行编辑。
针对登录模块的以下各个选项输入详细信息或进行选择。(并非所有选项对每个登录模块均可用。)
登录成功要求。选择应用于此模块的要求。选项包括:
必需。要求登录模块必须成功。无论验证成功或失败,都将继续验证列表中的下一个登录模块。如果这是唯一的登录模块,则管理员登录成功。
必备。要求登录模块必须成功。如果验证成功,将继续验证列表中的下一个登录模块。如果验证失败,则验证不再继续进行。
足够。不要求登录模块必须成功。如果验证成功,将不再继续验证列表中的下一个登录模块,并且管理员成功登录。如果验证失败,将继续验证列表中的下一个登录模块。
可选。不要求登录模块必须成功。无论验证成功或失败,都将继续验证列表中的下一个登录模块。
登录搜索属性。(仅限 LDAP。)指定尝试绑定(登录)到关联 LDAP 服务器时要使用的 LDAP 用户属性名称的有序列表。按顺序使用每个指定的 LDAP 用户属性以及用户的指定登录名称,搜索匹配的 LDAP 用户。这将允许用户使用 LDAP cn 或电子邮件地址登录到 Identity Manager(将 Identity Manager 配置为传递到 LDAP 时)。
例如,如果指定以下内容并且用户尝试以 gwilson 身份登录,则 LDAP 资源首先尝试查找 cn=gwilson 的 LDAP 用户。
cn
如果成功,则使用该用户指定的密码尝试绑定。如果不成功,则 LDAP 资源将搜索 mail=gwilson 的 LDAP 用户。如果仍失败,则登录失败。
如果不指定值,则默认 LDAP 搜索属性是:
uid
cn
登录关联规则。选择用于将用户提供的登录信息映射到 Identity Manager 用户的登录关联规则。此规则用于搜索 Identity Manager 用户(使用规则中指定的逻辑)。此规则必须返回包含一个或多个 AttributeCondition 的列表,用于搜索匹配的 Identity Manager 用户。所选规则必须具有 LoginCorrelationRule authType。有关 Identity Manager 将验证的用户 ID 映射到 Identity Manager 用户所需的步骤的说明,请参见示例 12–2。
新建用户名称规则。作为登录的一部分,选择自动创建新的 Identity Manager 用户时使用的新用户名称规则。
单击“保存”可以保存登录模块。保存后,可将该模块放在登录模块组中所有其他模块所在的位置。
如果将 Identity Manager 登录配置为对多个系统进行验证,则 Identity Manager 要验证的所有目标系统的帐户都应使用相同的用户 ID 和密码。
如果用户 ID 和密码组合不同,则对于用户 ID 和密码不同于在 Identity Manager 的“用户表单”表单中输入的用户 ID 和密码的系统,将不能成功登录。
某些此类系统可能使用锁定策略强制限定锁定帐户前失败登录尝试的次数。对于这些系统,虽然用户可通过 Identity Manager 继续成功登录,但用户帐户最终将被锁定。
示例 12–2 中包含一些伪代码,用于描述 Identity Manager 将验证的用户 ID 映射到 Identity Manager 用户所需的步骤。
if an existing IDM user’s ID is the same as the specified user ID if that IDM user has a linked resource whose resource name matches the resource that was authenticated and whose accountId matches the resource accountId returned by successful authentication (e.g. dn), then we have found the right IDM user otherwise if there is a LoginCorrelationRule associated with the configured login module evaluate it to see if it maps the login credentials to a single IDM user otherwise login fails otherwise login fails if the specified userID does not match an existing IDM user’s ID try to find an IDM user that has a linked resource whose resource name matches the resource accountID returned by successful authentication if found, then we have found the right IDM user otherwise if there is a LoginCorrelationRule associated with the configured login module evaluate it to see if it maps the login credentials to a single IDM user otherwise login fails otherwise login fails |
在示例 12–2 中,系统将尝试使用用户的链接资源(资源信息)查找匹配的 Identity Manager 用户。如果资源信息方法失败,但配置了 loginCorrelationRule,则系统将尝试使用 loginCorrelationRule 查找匹配的用户。