在AEM forms中启用单一登录

AEM表单提供两种启用单一登录(SSO)的方法- HTTP头和SPNEGO。

实施SSO时,AEM表单用户登录页面不是必需的,如果用户已通过其公司门户进行身份验证,则不显示。

如果AEM表单无法使用以下任一方法验证用户身份,则会将用户重定向到登录页。

使用HTTP头启用SSO

您可以使用“门户配置”页在应用程序和支持通过HTTP头传递标识的任何应用程序之间启用单一登录(SSO)。 实施SSO时,AEM表单用户登录页面不是必需的,如果用户已通过其公司门户进行身份验证,则不显示。

您还可以使用SPNEGO启用SSO。 (请参阅使用SPNEGO启用SSO。)

  1. 在管理控制台中,单击“设置”>“用户管理”>“配置”>“配置门户属性”。

  2. 选择是以启用SSO。 如果选择“否”,则页面上的其余设置不可用。

  3. 根据需要在页面上设置其余选项,然后单击确定:

    • SSO类型: (必选)选择HTTP头以使用HTTP头启用SSO。

    • 用户标识符的HTTP头 :(必填)其值包含登录用户的唯一标识符的头的名称。用户管理使用此值在用户管理数据库中查找用户。 从此头获取的值应与从LDAP目录同步的用户的唯一标识符匹配。 (请参阅用户设置。)

    • 标识符值映射到用户的用户ID而不是用户的唯一标识符:将 用户的唯一标识符值映射到用户ID。如果用户的唯一标识符是无法通过HTTP头轻松传播的二进制值(例如,如果正在从Active Directory同步用户,则选择此选项)。

    • 域的HTTP头: (非强制)其值包含域名的头的名称。仅当没有单个HTTP头可唯一标识用户时,才使用此设置。 当存在多个域且唯一标识符仅在域内唯一时,请使用此设置。 在这种情况下,请在此文本框中指定标题名称,并在“域映射”框中指定多个域的域映射。 (请参阅编辑和转换现有域。)

    • 域映射: (必需)指定以头值=域名 格式映射多个域

      例如,考虑域的HTTP头为domainName且其值可以为domain1、domain2或domain3的情况。 在这种情况下,请使用域映射将domainName值映射到用户管理域名。 每个映射必须位于不同的行上:

      domain1=UMdomain1

      domain2=UMdomain2

      domain3=UMdomain3

配置允许的引用者

有关配置允许的引用器的步骤,请参阅配置允许的引用器

使用SPNEGO启用SSO

在Windows环境中将Active Directory用作LDAP服务器时,可以使用简单和受保护的GSSAPI协商机制(SPNEGO)启用单一登录(SSO)。 启用SSO后,AEM表单用户登录页面不是必需的,也不显示。

您还可以使用HTTP头启用SSO。 (请参阅使用HTTP头启用SSO。)

注意

AEM Forms在JEE上不支持在多子域环境中使用Kerberos/SPNEGO配置SSO。

  1. 确定启用SSO的域。 AEM表单服务器和用户必须属于同一Windows域或受信任域。

  2. 在Active Directory中,创建一个表示AEM表单服务器的用户。 (请参阅创建用户帐户。) 如果要配置多个域以使用SPNEGO,请确保每个用户的口令不同。 如果密码不同,则SPNEGO SSO不起作用。

  3. 映射服务主体名称。 (请参阅映射服务主体名称(SPN)。)

  4. 配置域控制器。 (请参阅防止Kerberos完整性检查失败。)

  5. 添加或编辑企业域,如添加域编辑和转换现有域中所述。 创建或编辑企业域时,请执行以下任务:

    • 添加或编辑包含Active Directory信息的目录。

    • 将LDAP添加为身份验证提供程序。

    • 将Kerberos添加为身份验证提供程序。 在Kerberos的“新建”或“编辑身份验证”页上提供以下信息:

      • 身份验证提供程序: Kerberos
      • DNS IP: 运行AEM表单的服务器的DNS IP地址。您可以通过在命令行上运行ipconfig/all来确定此IP地址。
      • KDC主机:用 于身份验证的Active Directory服务器的完全限定的主机名或IP地址
      • 服务用 户:传递到KtPass工具的服务主体名称(SPN)。在以前使用的示例中,服务用户为HTTP/lcserver.um.lc.com
      • 服务领域: Active Directory的域名。在以前使用的示例中,域名为UM.LC.COM.
      • 服务密码: 服务用户的密码。在以前使用的示例中,服务密码为password
      • 启用SPNEGO: 启用SPNEGO进行单点登录(SSO)。选择此选项。
  6. 配置SPNEGO客户端浏览器设置。 (请参阅配置SPNEGO客户端浏览器设置。)

创建用户帐户

  1. 在SPNEGO中,将服务注册为域控制器上Active Directory中的用户,以表示AEM表单。 在域控制器上,转到“开始菜单”>“管理工具”>“Active Directory用户和计算机”。 如果“管理工具”不在“开始”菜单中,请使用控制面板。

  2. 单击“用户”文件夹以显示用户列表。

  3. 右键单击用户文件夹,然后选择“新建”>“用户”。

  4. 键入名/姓和用户登录名,然后单击下一步。 例如,设置以下值:

    • 名字:乌姆斯佩戈
    • 用户登录名:spnegodemo
  5. 键入密码。 例如,将其设置为​password。 确保已选择“密码永不过期”,且未选择其他选项。

  6. 单击“Next(下一步)” ,然后单击“Finish(完成)”。

映射服务主体名称(SPN)

  1. 获取KtPass实用程序。 此实用程序用于将SPN映射到REALM。 您可以作为Windows服务器工具包或资源工具包的一部分获得KtPass实用程序。 (请参阅Windows Server 2003 Service Pack 1支持工具。)

  2. 在命令提示符下,使用以下参数运行ktpass:

    ktpass -princ HTTP/@ -mapuserhostREALMuser

    例如,键入以下文本:

    ktpass -princ HTTP/lcserver.um.lc.com@UM.LC.COM -mapuser spnegodemo

    您必须提供的值如下所述:

    主机: 表单服务器或任何唯一URL的完全限定名称。在此示例中,它设置为lcserver.um.lc.com。

    REALM: 域控制器的Active Directory领域。在此示例中,它设置为UM.LC.COM。 确保输入大写字符的领域。 要确定Windows 2003的领域,请完成以下步骤:

    • 右键单击“我的计算机”并选择“属性”
    • 单击“计算机名称”选项卡。 域名值是领域名称。

    user: 您在上一任务创建的用户帐户的登录名。在此示例中,它设置为spnegodemo。

如果遇到此错误:

DsCrackNames returned 0x2 in the name entry for spnegodemo.  
ktpass:failed getting target domain for specified user.

尝试将用户指定为spnegodemo@um.lc.com:

ktpass -princ HTTP/lcserver.um.lc.com@UM.LC.COM -mapuser spnegodemo

防止Kerberos完整性检查失败

  1. 在域控制器上,转到“开始菜单”>“管理工具”>“Active Directory用户和计算机”。 如果“管理工具”不在“开始”菜单中,请使用控制面板。
  2. 单击“用户”文件夹以显示用户列表。
  3. 右键单击您在上一个任务中创建的用户帐户。 在此示例中,用户帐户为spnegodemo
  4. 单击“重置密码”。
  5. 键入并确认之前键入的口令。 在本例中,它设置为password
  6. 取消选择“下次登录时更改口令”,然后单击“确定”。

配置SPNEGO客户端浏览器设置

要使基于SPNEGO的身份验证正常工作,客户端计算机必须是创建用户帐户的域的一部分。 您还必须配置客户端浏览器以允许基于SPNEGO的身份验证。 此外,需要基于SPNEGO的身份验证的站点必须是可信站点。

如果使用计算机名称访问服务器,例如https://lcserver:8080*,* Explorer不需要任何设置。 如果输入的URL不包含任何点(“.”),Internet Explorer会将该站点视为本地Intranet站点。 如果您为站点使用完全限定的名称,则必须将该站点添加为受信任的站点。

配置Internet Explorer 6.x

  1. 转到“工具”>“Internet选项”,然后单击“安全”选项卡。
  2. 单击“本地内部网”图标,然后单击“站点”。
  3. 单击“高级”,在“将此网站添加到区域”框中,键入表单服务器的URL。 例如,键入https://lcserver.um.lc.com
  4. 单击“确定”,直到关闭所有对话框。
  5. 通过访问AEM forms服务器的URL测试配置。 例如,在浏览器URL框中,键入https://lcserver.um.lc.com:8080/um/login?um_no_redirect=true

配置Mozilla Firefox

  1. 在浏览器URL框中,键入about:config

    出现about:config - Mozilla Firefox对话框。

  2. 在“过滤器”框中,键入negotiate

  3. 在显示的列表中,单击network.negotiate-auth.trusted-uri,并根据您的环境键入以下命令之一:

    .um.lc.com-将Firefox配置为允许SPNEGO访问以um.lc.com结尾的任何URL。确保包含点(“”)。 开始时。

    lcserver.um.lc.com -将Firefox配置为仅允许特定服务器使用SPNEGO。请勿将此值与点("。")开始。

  4. 通过访问应用程序测试配置。 应显示目标应用程序的欢迎页面。

On this page

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now