zoukankan      html  css  js  c++  java
  • 33.2 Adding X.509 Authentication to Your Web Application

    启用X.509客户端身份验证非常简单。只需将< x509/>元素添加到您的http安全命名空间配置中。

    1 <http>
    2 ...
    3     <x509 subject-principal-regex="CN=(.*?)," user-service-ref="userService"/>;
    4 </http>

    该元素有两个可选属性:

      subject-principal-regex:用于从证书的使用者名称中提取用户名的正则表达式。默认值如上所示。这是用户名,它将被传递给用户详细信息服务UserDetailsService 来为用户加载权限。

      user-service-ref:这是将与X.509一起使用的用户详细信息服务UserDetailsService 的bean标识。如果在您的应用程序上下文中只定义了一个,则不需要它。

    subject-principal-regex应该包含一个单独的组。例如,默认表达式“CN=(。*?),”匹配常用名称字段。因此,如果证书中的主题名是“CN=Jimi Hendrix, OU=…”,这将给出一个用户名“Jimi Hendrix”。匹配不区分大小写。所以“电子邮件地址=(。?),”将匹配“EMAILADDRESS=jimi@hendrix.org,CN =……”给出用户名“jimi@hendrix.org”。如果客户端提供了证书并且成功提取了有效的用户名,那么在安全上下文中应该有一个有效的身份验证对象。如果找不到证书,或者找不到相应的用户,则安全上下文将保持为空。这意味着您可以轻松地将X.509身份验证与其他选项(如基于表单的登录)一起使用。

  • 相关阅读:
    深拷贝呀,浅拷贝,再来一次复习整理
    移动端适配之路的一步步了解
    回文数
    整数反转
    关于DOM事件篇收集的知识点
    Html5新增的属性-querySelector
    Java常用的集合类
    VerifyCodeServlet(一次性验证码)
    EncodingFilter
    BaseServlet(一个Servlet多个处理方法)
  • 原文地址:https://www.cnblogs.com/jrkl/p/13508496.html
Copyright © 2011-2022 走看看