使用 WebLogic Server9.2 中的 SAML 配置单点登录
页面: 1, 2, 3, 4, 5

步骤十:配置SAML 1.1目标站点

在这个步骤中,我们将为运行应用程序 appB的服务器实例配置各种目标站点设置。这些设置使得运行在 domainB上的服务器实例作为SAML目标站点进行工作,定义服务URI(如,Assertion Consumer Service URI),添加证书以便对POST配置文件响应进行签名以及配置Assertion Consumer Service的SSL。

  • 在管理控制台中,选择Environment,然后选择Domain Structure窗口中的Servers。
  • 选择AdminServer,然后选择Settings for AdminServer中的Federation Services及SAML 1.1 Destination Site选项卡。如图10所示。

SAML Destination Site Settings

图10. SAML目标站点的设置

  • 设置目标站点的各种值,如表6所示。
参数
启用目标站点 选中该复选框(真值)
断言使用者URI /samlacs/acs
ACS要求SSL  选中该复选框(真值)
SSL客户机身份别名  testalias
SSL Client Identity Pass Phrase  testkeypass
启用POST Recipient Check 选中该复选框(真值)
启用POST one Use Check 选中该复选框(真值)
Used Assertion Cache Properties APID=ap_00001

表 6. 目标站点的各种值

对单点登录进行测试

打开浏览器,指向URL http://localhost:7001/appA/,以便对单点登录进行测试。为 appA配置的基于FORM的身份验证将显示login.jsp页面;如图11所示。输入在步骤二中生成的ssouser值及demosaml值。

appA Application

图11. 显示appA登录的浏览器

将使用为 domainA配置的默认身份验证程序对该用户进行验证。

然后将显示auth.jsp页面。该页面包含指向 appB的链接( http://localhost:7003/appB/admin/services.jsp),如图12所示。单击该链接,将触发对ITS servlet的调用,并导致生成断言,然后将控制传送至目标站点。

appA Login Success

图 12. 显示appA成功登录目标站点(domainB上的appB)链接的浏览器

一旦在目标站点验证该断言,ssouser便可访问services.jsp页面,如图13所示。

appB Successful Login

图13. 显示使用SSO成功登录到appB的浏览器

如果ssouser首先访问目标站点将会怎样?在步骤九中,一旦配置完断言方,则Source Site Redirect URI被设置为ITS URL https://localhost:7001/samlits_ba/its;未通过身份验证的用户将被重定向到ITS URL https://localhost:7001/samlits_ba/its。这样做是为了支持先访问目标站点的情况,即如果用户试图未经验证便访问目标站点URL,将被重定向到源站点进行验证,然后获得SAML断言。源站点处的ITS servlet要求用户提供用户名和密码。一旦验证成功,就会重定向到目标站点,同时显示/appB/admin/services.jsp页面。

调试注意事项

您可以启用SAML安全调试来了解源站点和目标站点如何通过SAML SSO进行交互。要启用SAML安全调试:

  • 选择管理控制台中的Environment,然后选择Domain Structure窗口中的Servers。
  • 选择AdminServer,然后选择Debug选项卡。
  • 选择Change Center窗口中的Lock and Edit,这将允许您编辑调试设置。
  • 依次单击Debug Scope and Attributes中的weblogic > security > saml节点。然后,如图14所示,选中复选框以启用SAML调试。
  • 单击Change Center窗口中的Activate Changes。

SAML Debugging

图14. 显示启用SAML调试的WebLogic控制台

然后,便可浏览 domainAdomainB的AdminServer登录文件,以调试与SAML相关的问题(图15)。

SAML Debugging

图 15. 显示SAML交互的AdminServer登录

下载

结束语

本指南介绍了如何对SAML源站点域和目标站点域进行配置,以便这些域中的Web应用程序在可靠的联邦环境下运作;而实现的基础在于成功地单点登录到SAML源站点上的Web应用程序。这是完全通过使用管理控制台进行配置的典范,很多应用程序的用户都将直接从中受益。

参考文献

Vikrant Sawant 拥有超过14年的软件开发经验;并广泛地从事基于Java和Java EE的项目。