クラス InMemoryUserDetailsManager
- java.lang.Object
-
- org.springframework.security.provisioning.InMemoryUserDetailsManager
- 実装されたすべてのインターフェース:
UserDetailsPasswordService
、UserDetailsService
、UserDetailsManager
public class InMemoryUserDetailsManager extends java.lang.Object implements UserDetailsManager, UserDetailsPasswordService
インメモリマップによるUserDetailsManager
の非永続的な実装。主にテストとデモンストレーションの目的で、本格的な永続システムは必要ありません。
- 導入:
- 3.1
フィールドサマリー
フィールド 修飾子と型 フィールド 説明 protected org.apache.commons.logging.Log
logger
コンストラクターのサマリー
コンストラクター コンストラクター 説明 InMemoryUserDetailsManager()
InMemoryUserDetailsManager(java.util.Collection<UserDetails> users)
InMemoryUserDetailsManager(java.util.Properties users)
InMemoryUserDetailsManager(UserDetails... users)
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 void
changePassword(java.lang.String oldPassword, java.lang.String newPassword)
現在のユーザーのパスワードを変更します。void
createUser(UserDetails user)
指定された詳細で新しいユーザーを作成します。void
deleteUser(java.lang.String username)
指定されたログイン名を持つユーザーをシステムから削除します。UserDetails
loadUserByUsername(java.lang.String username)
ユーザー名に基づいてユーザーを見つけます。void
setAuthenticationManager(AuthenticationManager authenticationManager)
void
setSecurityContextHolderStrategy(SecurityContextHolderStrategy securityContextHolderStrategy)
使用するSecurityContextHolderStrategy
を設定します。UserDetails
updatePassword(UserDetails user, java.lang.String newPassword)
指定されたユーザーのパスワードを変更します。void
updateUser(UserDetails user)
指定されたユーザーを更新します。boolean
userExists(java.lang.String username)
指定されたログイン名を持つユーザーがシステムに存在するかどうかを確認します。
コンストラクターの詳細
InMemoryUserDetailsManager
public InMemoryUserDetailsManager()
InMemoryUserDetailsManager
public InMemoryUserDetailsManager(java.util.Collection<UserDetails> users)
InMemoryUserDetailsManager
public InMemoryUserDetailsManager(UserDetails... users)
InMemoryUserDetailsManager
public InMemoryUserDetailsManager(java.util.Properties users)
メソッドの詳細
createUser
public void createUser(UserDetails user)
インターフェースからコピーされた説明:UserDetailsManager
指定された詳細で新しいユーザーを作成します。- 次で指定:
- インターフェース
UserDetailsManager
のcreateUser
deleteUser
public void deleteUser(java.lang.String username)
インターフェースからコピーされた説明:UserDetailsManager
指定されたログイン名を持つユーザーをシステムから削除します。- 次で指定:
- インターフェース
UserDetailsManager
のdeleteUser
updateUser
public void updateUser(UserDetails user)
インターフェースからコピーされた説明:UserDetailsManager
指定されたユーザーを更新します。- 次で指定:
- インターフェース
UserDetailsManager
のupdateUser
userExists
public boolean userExists(java.lang.String username)
インターフェースからコピーされた説明:UserDetailsManager
指定されたログイン名を持つユーザーがシステムに存在するかどうかを確認します。- 次で指定:
- インターフェース
UserDetailsManager
のuserExists
changePassword
public void changePassword(java.lang.String oldPassword, java.lang.String newPassword)
インターフェースからコピーされた説明:UserDetailsManager
現在のユーザーのパスワードを変更します。これにより、永続ユーザーリポジトリ(datbase、LDAP など)のユーザーのパスワードが変更されます。- 次で指定:
- インターフェース
UserDetailsManager
のchangePassword
- パラメーター:
oldPassword
- 現在のパスワード (必要に応じて再認証する)newPassword
- 変更するパスワード
updatePassword
public UserDetails updatePassword(UserDetails user, java.lang.String newPassword)
インターフェースからコピーされた説明:UserDetailsPasswordService
指定されたユーザーのパスワードを変更します。これにより、永続的なユーザーリポジトリ(データベース、LDAP など)でユーザーのパスワードが変更されます。- 次で指定:
- インターフェース
UserDetailsPasswordService
のupdatePassword
- パラメーター:
user
- パスワードを変更するユーザーnewPassword
- 変更するパスワード。構成されたPasswordEncoder
によってエンコードされます- 戻り値:
- 新しいパスワードで更新された UserDetails
loadUserByUsername
public UserDetails loadUserByUsername(java.lang.String username) throws UsernameNotFoundException
インターフェースからコピーされた説明:UserDetailsService
ユーザー名に基づいてユーザーを見つけます。実際の実装では、実装インスタンスの構成方法に応じて、検索で大文字と小文字が区別される場合と、大文字と小文字が区別されない場合があります。この場合、戻ってくるUserDetails
オブジェクトのユーザー名は、実際にリクエストされたものとは異なる場合があります。- 次で指定:
- インターフェース
UserDetailsService
のloadUserByUsername
- パラメーター:
username
- データが必要なユーザーを識別するユーザー名。- 戻り値:
- 完全に入力されたユーザーレコード (非
null
) - 例外:
UsernameNotFoundException
- ユーザーが見つからなかった場合、またはユーザーに GrantedAuthority がない場合
setSecurityContextHolderStrategy
public void setSecurityContextHolderStrategy(SecurityContextHolderStrategy securityContextHolderStrategy)
使用するSecurityContextHolderStrategy
を設定します。デフォルトのアクションは、SecurityContextHolder
に格納されているSecurityContextHolderStrategy
を使用することです。- 導入:
- 5.8
setAuthenticationManager
public void setAuthenticationManager(AuthenticationManager authenticationManager)