データベースアカウントのパスワード暗号化の詳細な説明と例 データベースアカウントとパスワードはデータベース内で暗号化されることが多いのですが、問題があります。UserService を使用してパスワードを暗号化する場合、Spring Security で検証された暗号化方式が別途構成されるため、Spring Security も同期的に構成する必要があります。次のように: <認証マネージャー> <認証プロバイダーのユーザーサービスref="userDetailService"> <パスワード エンコーダ ref="passwordEncoder" /> </認証プロバイダー> </認証マネージャー> <beans:bean class="com.sapphire.security.MyPasswordEncoder" id="passwordEncoder"> <beans:コンストラクタ引数値="md5"></beans:コンストラクタ引数> </beans:bean> 上記の構成ファイルに示されているように、passwordEncoder は Spring Security がアカウントを暗号化して検証する場所です。 傍受後、Spring Security はまずユーザーを検索し、自身で定義された userDetailService を通じて対応するユーザーを見つけ、次にフレームワークがパスワード一致検証を実行します。 userDetailService からユーザーを取得した後、フレームワークで定義されている DaoAuthenticationProvider に入り、認証メソッドにジャンプします。 このメソッドは、次の 2 つのチェックを実行します。 * preAuthenticationChecks: 主にユーザー情報の有効期限が切れていないかなどを確認します。呼び出しメソッドはuserDetailで定義されています。 * additionalAuthenticationChecks: これはユーザー名とパスワードの検証プロセスです。 PasswordEncoder は xml に挿入される Bean なので、自分で完成した passwordEncoder を呼び出します。 パブリッククラス MyPasswordEncoder は MessageDigestPasswordEncoder を拡張します { パブリックMyPasswordEncoder(文字列アルゴリズム) { スーパー(アルゴリズム); } @オーバーライド パブリックブール値isPasswordValid(文字列encPass、文字列rawPass、オブジェクトsalt) { encPass.equals(DigestUtils.md5DigestAsHex(rawPass.getBytes())) を返します。 } } これは私の実装のシンプルなバージョンです。Spring に付属する暗号化アルゴリズムを呼び出します。非常にシンプルです。もちろん、複雑な暗号化方法を使用することもできます。これはあなた次第です。 読んでいただきありがとうございます。お役に立てれば幸いです。このサイトをサポートしていただきありがとうございます。 |
<<: userdel コマンドを使用して Linux ユーザーを削除する方法の詳細なチュートリアル
目次1 背景2 コンテナを作成する3 SAパスワードを変更する4 mssql のリンク5. コンテナ...
目次jupyterをインストールするDocker ポートマッピングjupyterをインストールするp...
1: syslog.conf の概要異なるタイプの Unix の場合、標準の UnixLog システ...
目次1. 現象2. 解決策3. 要約: 1. 現象1. 要件: 特定の表示ページをキャプチャしてアル...
コードをコピーコードは次のとおりです。 <html> <ヘッド> <m...
⑴ 内容によって形式が決まります。まず内容を充実させ、次にブロックに分割し、トーンを決め、最後に細部...
目次古典的なアプローチ質問その他の質問注意が必要な問題古典的なアプローチご存知のとおり、アカウントの...
1. Docker Secretとは1. シナリオ表示MySQL サービスなど、一部のサービスではパ...
Vue でフォーム フィールドを記述および検証する方法は多数あります。このブログでは、より一般的に使...
序文Linux システムの管理と保守のプロセスでは、多数のコマンドが使用されます。非常に長いコマンド...
この記事では、パーセンテージスコアリングプログレスバーを実現するためのjQueryの具体的なコードを...
最近、あるプロジェクトに取り組んでいたとき、自分のプロジェクトでは CSS3 のアニメーション技術を...
1. コマンドの紹介chkconfig コマンドは、システム サービスの実行レベル情報を更新および照...
序文多くの管理・オフィスシステムでは、ツリー構造がいたるところで見られます。たとえば、「部門」や「機...
Ubuntu 16.04 FTP サーバーをビルドするftpをインストールするftp をインストール...