繁体   English   中英

扩展JASIG CAS以获得授权

[英]Extending JASIG CAS for Authorization

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

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

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

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

CAS是否可以实现此方案

Jasig CAS是高度可定制的,并且由于它是使用spring框架和spring安全性构建的,因此您可以将其扩展为任何需要。

基本上我需要修改的类

您感兴趣的类别是:

  • PolicyBasedAuthenticationManager

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

  • AuthenticationHandler

对单个凭证进行身份验证,并报告以下三种可能的结果之一:成功,失败,未尝试。

  • PrincipalResolver

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

Jasig CAS有据可查 您应该能够在那里找到所需的所有信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM