【问题标题】:Get the CAS authentication response in grails获取grails中的CAS认证响应
【发布时间】:2013-05-24 03:50:45
【问题描述】:

Grails 2.2.2,插件 spring-security 核心和 CAS 插件。

假设我已经使用快速启动脚本设置了 spring-security-core,所以我有 User、Role 和 UserRole 表。 CAS 已为这些表中表示的用户设置并正常工作。

当有问题的用户访问时,他们使用 CAS 进行重定向探戈,这表明他们没问题,并在 CAS 插件进行票证验证时返回用户名。但是,因为我的 User 表中没有表示用户名,所以根据 spring-security 的身份验证失败,所以我无法获取 authorizedUser 或 Principal 等。

但是,即使有问题的用户不在我的用户表中,我也想接受 CAS 身份验证,因此没有角色。我信任这个 CAS 服务器。

如何访问 CAS 票证验证步骤的响应?如果可以的话,我可以使用 CAS 提供的名称创建一个用户并分配一些合理的默认角色。

【问题讨论】:

    标签: grails spring-security cas jasig


    【解决方案1】:

    创建您自己的实现org.codehaus.groovy.grails.plugins.springsecurity.GrailsUserDetailsService 的UserDetailsS​​ervice。它应该根据传递给loadUserByUsername 的用户名创建一个新的 UserDetails,而不是检查 User 表。将其设置为名称为 userDetailsService 的 spring bean,它应该覆盖默认的 GORM 实现。

    【讨论】:

    猜你喜欢
    • 2017-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-19
    相关资源
    最近更新 更多