セキュリティフレームワークの構成ファイル

1 ... spring_security.xml

1の<?xml version = "1.0"エンコード= "UTF-8"?>
 2 <豆のxmlns = "http://www.springframework.org/schema/beans"
 3つ         のxmlns:XSI = "のhttp:// WWW。 w3.org/2001/XMLSchema-instance "
 4つ         のxmlns:セキュリティ= "http://www.springframework.org/schema/security"
 5         XSI:のschemaLocation =" http://www.springframework.org/schema/beans
 6         http:// www.springframework.org/schema/beans/spring-beans.xsd 
7         のhttp:// www.springframework.org/schema/security 
8         のhttp:// www.springframework.org/schema/security/spring- security.xsd ">
9      <! -静的リソースをブロックしません- >
10      <セキュリティます:httpパターン= "/ CSS / **"セキュリティ= "なし"> </セキュリティ:HTTP>
 11      <セキュリティます:httpパターン= "/ IMG / **"セキュリティ= "なし"> </セキュリティ: HTTP>
 12      <セキュリティます:httpパターン= "/プラグイン/ **"セキュリティ= "なし"> </セキュリティ:HTTP>
 13      <! -不拦截登录不拦截エラー- >
 14      <セキュリティます:httpパターン=」 /login.jsp "セキュリティ= "NONE"> </セキュリティ:HTTP>
 15      <セキュリティ:HTTPパターン= "/ error.jsp"セキュリティ= "NONE"> </セキュリティ:HTTP>
 16      <セキュリティ:HTTPパターン=" /favicon.ico」セキュリティ= "なし"> </セキュリティ:HTTP>
17      <! -ブロックルール- >
 18      <! - 設定ルール傍受
 19     自動独自のページを使用して設定を
 20に        使用- のspel式かどうかを式
 21がある    - >
 22れる      <セキュリティ:HTTPオートコンフィグ= "falseに"使用-式= "trueに">
 23である          < -コンフィギュレーション、ノックダウンアドレス- >!
 24          <セキュリティ:intercept-パターン= URL "/ **"アクセス= "ROLE_USER"> </セキュリティ:インターセプト-URL>
 25          <! -あなたが特定のページにジャンプする設定- >
 26          <セキュリティ:フォーム- ログイン
 27          ログインページ= "/login.jsp"
 28          ログイン-処理-URL = "/ログイン"
 29          デフォルト -target-URL = "/ index.jspの"
 30          認証失敗-URL = "/ login.jspに"
31          > </セキュリティ:フォームログイン>
 32         <! -关闭跨域请求- >
 33          <セキュリティ:無効CSRF = "真の"> </セキュリティCSRF>
 34          <! -退出登录- >
 35          <セキュリティ:ログアウト無効セッション= "true"をログアウト-URL = "/ログアウト"ログアウト成功-URL = "/ login.jspを"> </セキュリティ:>ログアウト
 36      </セキュリティ:HTTP>
 37      < -自带账户密码- >!
 38      <セキュリティ:認証マネージャ>
 39          <セキュリティ:認証プロバイダのユーザー・サービス-REF = "sysUserService">
 40 < - <セキュリティ:!パスワードエンコーダREF = "passwordEncoder"> </セキュリティ:パスワードエンコーダ> - >
 41 <
! - <セキュリティ:ユーザー・サービス> - > 42<! - &LT;&ndashに、临时账户密码不加密&のndash;&GT;! - >
 43 < - <セキュリティ:ユーザ名= "管理者"パスワード= "{NOOP}管理"当局= "ROLE_USER">を< /セキュリティ:ユーザー> - >
 44 <! - </セキュリティ:ユーザサービス> - >
 45          </セキュリティ:認証プロバイダ>
 46      </セキュリティ:認証マネージャ>
 47      <ビーンID = "passwordEncoder" クラス = "org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"> </豆>
 48 </豆>

2 ....のweb.xml

1 <!DOCTYPE WEB- アプリのPUBLIC
 2   " - // Sun Microsystemsの、Inc.//DTD Webアプリケーション2.3 // EN"
 3   "http://java.sun.com/dtd/web-app_2_3.dtd">
 4  
5の<web-app>
 6    <表示名>アーキタイプ作成されたWebアプリケーション</表示名>
 7      <文脈PARAM>
 8          の<param-name>のcontextConfigLocation </ PARAM名>
 9          の<param-value>のクラスパス*: ApplicationContextの* .xmlファイル、クラスパス:spring_security.xml </ PARAM値>
 10      </コンテキストPARAM>
 11      <フィルター>
 12          <フィルタ名>
CharacterEncodingFilter </フィルタ名> 13         <フィルター- クラス > org.springframework.web.filter.CharacterEncodingFilter </フィルター- クラス >
 14          <INIT-PARAM>
 15              の<param-name>のエンコーディング</ PARAM名>
 16              の<param-value>は、UTF-8 </ PARAM値>
 17          </ INIT-PARAM>
 18      </フィルタ>
 19      <フィルター>
 20          <フィルタ名> springSecurityFilterChain </フィルタ名>
 21          <フィルター- クラス > org.springframework.web.filter.DelegatingFilterProxy </フィルタ- クラス >
 22      </フィルタ>
23      <フィルタマッピング>
24          <フィルタ名> CharacterEncodingFilter </フィルタ名>
 25          の<url-pattern> / * </のurl-pattern>
 26      </のfilter-mapping>
 27      <! -春のセキュリティ的过滤器配置- >
 28  
29      <フィルタマッピング>
 30          <フィルタ名> springSecurityFilterChain </フィルタ名>
 31          <URLパターン> / * </ URLパターン>
 32      </フィルタマッピング>
 33      <リスナー>
 34          <リスナクラス> ORG .springframework.web.context.ContextLoaderListener </リスナクラス>
 35      </リスナー>
36      <サーブレット>
 37         <サーブレット名>のDispatcherServlet </サーブレット名>
 38          <サーブレットクラス> org.springframework.web.servlet.DispatcherServlet </サーブレットクラス>
 39          <INIT-PARAM>
 40              <PARAM名> contextConfigLocation </ param-名>
 41              の<param-value>のクラスパス*:spring_mvc.xml </ PARAM値>
 42          </ initの-param>の
 43          <! -按照Tomcatの顺序加载- >
 44          の<load-on-startup> 1 </ load-on-startup>
 45      </サーブレット>
 46      <のservlet-mapping>
 47          <サーブレット名>のDispatcherServlet </サーブレット名>
48          の<url-pattern> / </のurl-pattern>
 49     </サーブレットマッピング>
 50      <ウェルカム・ファイル・リスト>
 51          <ウェルカムファイル> index.htmlを</歓迎ファイル>
 52          <ウェルカムファイル>のindex.htm </歓迎ファイル>
 53          <ウェルカムファイル> index.jspの</歓迎ファイル>
 54          <ウェルカムファイル>にdefault.html </歓迎ファイル>
 55          <ウェルカムファイル>のdefault.htm </歓迎ファイル>
 56          <ウェルカムファイル> default.jsp </歓迎ファイル>
 57      </歓迎ファイルリスト>
 58  </ web-app>の

3 ... MD5のJavaコードの暗号化パスワード

1  パッケージcom.wsc.md5;
 2  
。3  インポートjava.math.BigIntegerの;
 4  インポートjava.security.MessageDigestの、
 5  インポートjava.security.NoSuchAlgorithmException;
 6  
7。 パブリック クラスMD5Utils {
 8。     / ** 
9。      *アルゴリズムが使用されているMD5暗号化
 10       * / 
11      公共 静的{文字列MD5(文字列平文)
 12は         バイト [] secretBytes = NULL ;
 13である         トライ{
 14              secretBytes = MessageDigest.getInstance( "MD5"().digest
 15                      plainText.getBytes());
 16          } キャッチ(持つNoSuchAlgorithmException E){
 17。             スロー 新しい新規のRuntimeException( "いいえMD5アルゴリズム!" );
 18れる         }
 。19          文字列md5code = 新しい新規のBigInteger(1、secretBytes).toString(。 16); // 20          // 発生数が32未満であれば、上記は0充填する必要が
21である         ためint型 ; Iは、32 < - md5code.length(I = 0); Iは++ ){
 22は              md5code =「0 「+ md5code;
 23である         }
 24          リターンmd5code;
25      }
 26  
27      公共 静的 ボイドメイン(文字列[]引数){
 28          のSystem.out.println(MD5( "123" ));
29      }
 30  
31 }

4 ...プレーンテキストのパスワードを取得します

1  //   MD5 
2          @Autowired
 3          PasswordEncoder passwordEncoder。
4      @RequestMapping( "追加/" 5      パブリック文字列を追加(SYSUSERのSYSUSER){
 6  
7          // 获取明文密码
 8  //         文字列のパスワード= sysuser.getPASSWORD()。
9  //         // 对明文密码加密
 10  //         文字列md5password = passwordEncoder.encode(パスワード)。
11  //         sysuser.setPASSWORD(md5password)。
12          sysuserService.add(SYSUSER)。
13          リターン"リダイレクト:/ユーザー/ pageChange" ;
14      }

 

おすすめ

転載: www.cnblogs.com/wangshichang/p/11365314.html