2.9.3. 配置动态帐户 Chooser
如果一个服务提供商配置了多个身份提供程序,您可以将该服务提供商配置为提示用户选择用于验证其凭证的 IDP。要使用动态帐户选择器配置服务提供商,必须执行以下操作:
- 配置所有身份提供程序。 
- 配置 - WEB-INF/idpmap.properties文件。- 您需要创建一个 - WEB-INF/idpmap.properties文件,该文件使用- name=url列出所有可用身份供应商。- WEB-INF/idpmap.properties示例- Domain=http://localhost:8080/idp/ Domain-Alt=http://localhost:8080/idp-alt/ - Domain=http://localhost:8080/idp/ Domain-Alt=http://localhost:8080/idp-alt/- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 创建帐户选择者登录页面。 - 要让用户选择要进行身份验证的身份提供商,您必须创建一个帐户选择者登录页面,并将其包含在您的服务提供商中。此页面应包含指向您希望允许其进行身份验证的所有身份供应商的链接。 - accountChooser.html示例- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 在 picket - link.xml 中配置- IdentityURL元素。- 您还需要在 picket - link.xml中配置- IdentityURL元素来引用帐户选择器登录页面。有关为服务提供商配置其余- picketlink.xml的详情,请参考 设置 SP 部分。- picket - link.xml示例- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 您可以使用 - Provider元素中提供的属性为动态帐户选择器配置附加选项。- Expand - 表 2.4. Provider Element Attributes - 选项 - 类型 - 默认值 - 描述 - 页面 - 字符串 - /accountChooser.html - 用于列出不同 IDP 帐户的 HTML/JSP 页面名称。 - 过期 - 整数 - -1 - Cookie 到期时间以秒为单位。默认为 - -1,这意味着 Cookie 在浏览器关闭时过期。- DefaultURL - 字符串 - 默认 IDP 的 URL。 - 域 - 字符串 - 发送到用户的浏览器的 cookie 的域名。 - 类型 - 字符串 - 用于替换默认实现的 IDP 映射的完全限定实施名称。此实现必须实施 - org.picketlink.identity.federation.web.config.IdentityURLConfigurationProvider。默认实施使用 SP Web 应用程序中的- WEB-INF/idpmap.properties文件。重要- 不支持使用 picket - link-federation子系统配置动态帐户选择器。