zoukankan      html  css  js  c++  java
  • siteminder sso agent 初探

    公司一直用weblogic开发,CA有现成的sso agent for weblogic,只需要简单封装即可,主要是通过filter+serevlet来实现的。

    后来又有了sso agent from jboss,自己也设想一下tomcat/jetty 替换weblogic 来作为web server,所以考虑custom sso agent for web container的开发.


     大致的设计架构:

    • 组件1:authenticator/filter:可以支持cross domain,cookie,form
    • 组件2:loginModule/Provider:包括Identity 和Form 个独立组件
    • tomcat 使用 jaas(sso realm + form realm) + authenticator来实现
    • jetty 使用 jass(sso realm _+ realm )+ authenticator来实现
    • sso realm 和 form realm 都是标准的jaas实现,tomcat 和jetty 分别继承自身的FormAuthenticator来扩展.

     认证流程处理:

    a.SSO跨域
      需要配置siteminder 的cookie provider,用于生成cookie和SESSION,以便于不同域cookie生成的桥梁;
      .判断请求是否已经认证过,如何认证过直接通过。
      .如果是登陆请求j_security_check,使用SMSSION来登陆,如果通过,realm 认证(获取权限role);认证成功,跳转到cookieprovider(生成cookieprovider domain的cookie或smsession);如何认证成功,结束。
      .使用SSO Cookie登陆,如果通过,realm认证;认证成功,跳转到cookieprovider(生成cookieprovider domain的cookie或smsession);如果认证成功,结束
      .跳转到登陆页面.
      
    b.SSO同域
      .判断请求是否已经认证过,如何认证过直接通过。
      .如果是登陆请求j_security_check,使用SSO Cookie登陆,如果通过,realm认证(获取权限role).如何认证成功,结束
      .跳转到登陆页面.
      
    c.非SSO
      .realm认证。如果成功,跳转到welcome页面。否则跳转到登陆错误页面.
       
    smagent sdk 4.x 是需要在policy server上配置静态密钥,5.x 就可以先注册生成Smhost.conf,smagent加载即可


    参考

    JAAS:http://docs.oracle.com/javase/6/docs/technotes/guides/security/jaas/tutorials/index.html
    SiteMinder:https://support.ca.com/cadocs/0/CA%20SiteMinder%20r6%200%20SP6-ENU/Bookshelf_Files/HTML/index.htm?toc.htm?937146.html

  • 相关阅读:
    防窜货下加密锁使用常见问题
    SQL Server 2000/2005/2008 触发器的管理和查看
    列表显示时,部分凭证会分两行显示,且不能删除
    JDBC 连接 带实例名的SQL Server
    登录软件提示:读取数据源出现错误,pkcs7填充无效,无法被移除
    完美卸载SQL Server 2008的方案
    彻底卸载(删除)SQL server2000
    NCV5取消:授权数到达,或者许可证过期提示的秘诀
    SQL Server日志清空方法 .
    第二天 一列布局
  • 原文地址:https://www.cnblogs.com/yangjun1120/p/2332154.html
Copyright © 2011-2022 走看看