如何实施SSO

时间:2012-02-09 12:42:34

标签: openid single-sign-on cas

我想实施SSO单点登录 我发现很多链接和文章都在谈论CAS OpenID和许多不同的东西,我真的很失败 我应该使用CAS吗?我安装了CAS服务器并将其解压缩到Tomcat中 你下一步怎么做?
或者这是错的吗? 你能解释一下我如何开发一个简单的HelloWorld来实现SSO。

非常感谢

1 个答案:

答案 0 :(得分:13)

CAS是一种流行的SSO实现,因此安装CAS服务器是一个很好的第一步。您需要一台服务器来处理您正在计划的任何事情,并且您可以检查它是否正常工作而没有任何其他部分(分发中的INSTALL.TXT文件中有说明)。对于您打算编写的任何CAS客户端,都不能这样说。

启动并运行CAS服务器后,您还有两个主要任务:

  1. 创建或修改您的应用程序以成为CAS客户端
  2. 将默认身份验证处理程序替换为有用的
  3. 如果你像我一样,你希望尽快看到这件事(或者有东西向你的经理展示)。在这种情况下,首先解决步骤1,但不要从真正的应用程序开始。快点做一个Hello World。 https://wiki.jasig.org/display/CASUM/Demo有具体的说明。你已经安装了Tomcat,所以跳过步骤1和3.如果你也启用了HTTPS,你也可以跳过第2步和第4步,直接进入第5步。一旦你实现这一目标,你将拥有一个漂亮的假设您将使用Java实现CAS客户端,那么您应该知道您需要为真实应用程序做些什么。

    您需要执行第2步,因为默认身份验证处理程序仅对演示有用。任何匹配的用户标识/密码(例如hello / hello)都将成功进行身份验证。您可能要对SQL数据库或Active Directory或LDAP服务器等目录进行身份验证。 CAS包括所有这些用例以及其他用例的身份验证处理程序,但Jasig将这些用作子项目组织,因此您必须从源代码执行Maven构建才能使用其中任何一个(如果你的话,这是一个很大的痛苦)问我)。有关如何在https://wiki.jasig.org/display/CASUM/Authentication找到的文档,但如果您已经设置了Maven,那就不是那么糟糕了。只需在包含的pom.xml文件中添加一个依赖项,然后进行构建。

    如果你是新手,SSO可能很难让你理解,所以采取一些小步骤,花时间了解你在做什么。到目前为止我见过的最好的CAS扩展是https://www.purdue.edu/apps/account/html/cas_presentation_20110407.pdf。它提供了具体的详细信息,包括典型的服务器日志条目,请求和响应的详细信息以及非常清晰的整体流程图。应该只需要了解正在发生的事情。

    祝你好运。