【问题标题】:Extending JASIG CAS for Authorization扩展 JASIG CAS 以进行授权
【发布时间】:2016-02-13 21:17:14
【问题描述】:

我必须建立一个集中的身份验证和授权服务。我正在尝试使用 JASIG CAS。但它提到它是一个身份验证协议。我的场景如下。

  1. 我的应用程序在第一次访问时重定向到 cas 服务器。
  2. CAS 重定向用户以进行 google 身份验证
  3. 用户使用所需电子邮件登录并重定向回 CAS
  4. 此时我需要在我的本地 jdbc 存储中验证用户是否启用,如果尚未注册用户,并且电子邮件域是 abc.com,我需要自动注册用户。

  5. CAS 重定向到调用服务
  6. 我的服务执行 validateService api 调用。我想在 CAS 的结果响应中获取所请求服务的用户权限

这种情况是否可以通过 CAS 实现,如果 CAS 可以扩展,有人可以建议如何做到这一点,基本上是我需要修改的类

【问题讨论】:

    标签: java spring spring-security cas jasig


    【解决方案1】:

    CAS可以实现这个场景吗

    Jasig CAS 是高度可定制的,因为它是使用 Spring 框架和 Spring Security 构建的,您可以将其扩展到您的任何需求。

    基本上是我需要修改的类

    您感兴趣的课程是:

    • PolicyBasedAuthenticationManager

    身份验证子系统的入口点。它接受一个或多个 凭据并将身份验证委托给已配置 AuthenticationHandler 组件。它收集每个结果 尝试并确定有效的安全策略。

    • AuthenticationHandler

    验证单个凭据并报告三种可能的凭据之一 结果:成功、失败、未尝试。

    • PrincipalResolver

    将身份验证凭据中的信息转换为安全信息 通常包含附加元数据属性的主体(即 用户详细信息,例如从属关系、组成员身份、电子邮件、显示 名称)。

    Jasig CAS 很好 documented。您应该可以在那里找到您需要的所有信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多