我需要使用OpenAM建立一个两步身份验证链。在第一步中,该模块请求用户证书(必须先以前与用户ID链接),并将其发送到外部Web服务,以验证它并返回userID,该服务成为原理的名称:

public Principal getPrincipal()
{
    return new DataStorePrincipal(userID);
}

在第二步中,该模块要求用户输入其用户ID和密码。如何确保键入的用户ID与步骤1中的键入相同?

模块是这样链接的:

  1. 证书 - 要求
  2. ID/密码 - 必需
有帮助吗?

解决方案

第一个模块可以将“用户ID”保存在共享状态地图中,第二个模块可以从共享状态地图中读取它。您可能会查看现有的Auth-Modules源,因为它们为“共享状态”提供了支持

您也可以看一下http://docs.forgerock.org/en/openam/10.1.0/admin-guide/index.html#configure-authn-chains'

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top