クラス SecurityExpressionRoot
- java.lang.Object
-
- org.springframework.security.access.expression.SecurityExpressionRoot
- 実装されたすべてのインターフェース:
SecurityExpressionOperations
public abstract class SecurityExpressionRoot extends java.lang.Object implements SecurityExpressionOperations
Spring Security 式の評価で使用するベースルートオブジェクト。- 導入:
- 3.0
コンストラクターの概要
コンストラクター コンストラクター 説明 SecurityExpressionRoot(java.util.function.Supplier<Authentication> authentication)
Authentication
オブジェクトの遅延初期化を使用する新しいインスタンスを作成します。SecurityExpressionRoot(Authentication authentication)
新しいインスタンスを作成します
メソッドのサマリー
フィールドの詳細
permitAll
public final boolean permitAll
"permitAll" 表現が可能- 関連事項:
- 定数フィールド値
denyAll
public final boolean denyAll
"denyAll" 表現が可能- 関連事項:
- 定数フィールド値
read
public final java.lang.String read
- 関連事項:
- 定数フィールド値
write
public final java.lang.String write
- 関連事項:
- 定数フィールド値
create
public final java.lang.String create
- 関連事項:
- 定数フィールド値
delete
public final java.lang.String delete
- 関連事項:
- 定数フィールド値
admin
public final java.lang.String admin
- 関連事項:
- 定数フィールド値
コンストラクターの詳細
SecurityExpressionRoot
public SecurityExpressionRoot(Authentication authentication)
新しいインスタンスを作成します- パラメーター:
authentication
- 使用するAuthentication
。null にはできません。
SecurityExpressionRoot
public SecurityExpressionRoot(java.util.function.Supplier<Authentication> authentication)
Authentication
オブジェクトの遅延初期化を使用する新しいインスタンスを作成します。- パラメーター:
authentication
-Authentication
のSupplier
を使用します。null にすることはできません。- 導入:
- 5.8
メソッドの詳細
hasAuthority
public final boolean hasAuthority(java.lang.String authority)
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
がAuthentication.getAuthorities()
内に特定の権限を持っているかどうかを判別します。- 次で指定:
- インターフェース
SecurityExpressionOperations
のhasAuthority
- パラメーター:
authority
- テストする権限 (例: "ROLE_USER" )- 戻り値:
- 権限が見つかった場合は true、そうでない場合は false
hasAnyAuthority
public final boolean hasAnyAuthority(java.lang.String... authorities)
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
がAuthentication.getAuthorities()
内に指定された権限のいずれかを持っているかどうかを判別します。- 次で指定:
- インターフェース
SecurityExpressionOperations
のhasAnyAuthority
- パラメーター:
authorities
- テストする権限 (例: "ROLE_USER" ,"ROLE_ADMIN" )- 戻り値:
- いずれかのオーソリティが見つかった場合は true、そうでない場合は false
hasRole
public final boolean hasRole(java.lang.String role)
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
がAuthentication.getAuthorities()
内に特定の権限を持っているかどうかを判別します。これは
SecurityExpressionOperations.hasAuthority(String)
に似ていますが、このメソッドは渡された文字列がロールであることを暗示しています。例: "USER" が実装に渡された場合、代わりに "ROLE_USER" を使用するように変換できます。ロールが変換される方法は、実装設定によって異なります。- 次で指定:
- インターフェース
SecurityExpressionOperations
のhasRole
- パラメーター:
role
- テストする権限 (例: "USER" )- 戻り値:
- 権限が見つかった場合は true、そうでない場合は false
hasAnyRole
public final boolean hasAnyRole(java.lang.String... roles)
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
がAuthentication.getAuthorities()
内に指定された権限のいずれかを持っているかどうかを判別します。これは hasAnyAuthority に似ていますが、このメソッドは渡された文字列がロールであることを意味します。例: "USER" が渡された場合、実装では代わりに "ROLE_USER" を使用するように変換される場合があります。ロールの変換方法は、実装設定によって異なります。
- 次で指定:
- インターフェース
SecurityExpressionOperations
のhasAnyRole
- パラメーター:
roles
- テストする権限 (例: "USER" ,"ADMIN" )- 戻り値:
- いずれかのオーソリティが見つかった場合は true、そうでない場合は false
getAuthentication
public final Authentication getAuthentication()
インターフェースからコピーされた説明:SecurityExpressionOperations
式の評価に使用されるAuthentication
を取得します- 次で指定:
- インターフェース
SecurityExpressionOperations
のgetAuthentication
- 戻り値:
- 式を評価するための
Authentication
permitAll
public final boolean permitAll()
インターフェースからコピーされた説明:SecurityExpressionOperations
常にアクセスを許可します。- 次で指定:
- インターフェース
SecurityExpressionOperations
のpermitAll
- 戻り値:
- true
denyAll
public final boolean denyAll()
インターフェースからコピーされた説明:SecurityExpressionOperations
常にアクセスを拒否する- 次で指定:
- インターフェース
SecurityExpressionOperations
のdenyAll
- 戻り値:
- false
isAnonymous
public final boolean isAnonymous()
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
が匿名かどうかを判別します- 次で指定:
- インターフェース
SecurityExpressionOperations
のisAnonymous
- 戻り値:
- ユーザーが匿名の場合は true、それ以外の場合は false
isAuthenticated
public final boolean isAuthenticated()
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
が認証されているかどうかを判別します- 次で指定:
- インターフェース
SecurityExpressionOperations
のisAuthenticated
- 戻り値:
SecurityExpressionOperations.getAuthentication()
が認証されている場合は true、そうでない場合は false
isRememberMe
public final boolean isRememberMe()
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
が Remember Me を使用して認証されたかどうかを判別します- 次で指定:
- インターフェース
SecurityExpressionOperations
のisRememberMe
- 戻り値:
SecurityExpressionOperations.getAuthentication()
が認証情報を使用して認証されている場合は true、それ以外の場合は false
isFullyAuthenticated
public final boolean isFullyAuthenticated()
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
が、私を記憶せずに認証されたかどうかを判別します- 次で指定:
- インターフェース
SecurityExpressionOperations
のisFullyAuthenticated
- 戻り値:
SecurityExpressionOperations.getAuthentication()
が認証情報を使用せずに認証された場合は true、それ以外の場合は false
getPrincipal
public java.lang.Object getPrincipal()
getAuthentication()
からAuthentication.getPrincipal()
にアクセスするための便利なメソッド- 戻り値:
setTrustResolver
public void setTrustResolver(AuthenticationTrustResolver trustResolver)
setRoleHierarchy
public void setRoleHierarchy(RoleHierarchy roleHierarchy)
setDefaultRolePrefix
public void setDefaultRolePrefix(java.lang.String defaultRolePrefix)
hasAnyRole(String...)
またはhasRole(String)
に追加するデフォルトのプレフィックスを設定します。例: hasRole("ADMIN" ) または hasRole("ROLE_ADMIN" ) が渡された場合、defaultRolePrefix が "ROLE_" (デフォルト) のときはロール ROLE_ADMIN が使用されます。null または空の場合、デフォルトのロールプレフィックスは使用されません。
- パラメーター:
defaultRolePrefix
- ロールに追加するデフォルトのプレフィックス。デフォルトは "ROLE_"。
hasPermission
public boolean hasPermission(java.lang.Object target, java.lang.Object permission)
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
に、許可が与えられたターゲットへのアクセス許可があるかどうかを判別します- 次で指定:
- インターフェース
SecurityExpressionOperations
のhasPermission
- パラメーター:
target
- 権限を確認するターゲットドメインオブジェクトpermission
- ドメインオブジェクトをチェックする権限 ("read" ,"write" など)。- 戻り値:
SecurityExpressionOperations.getAuthentication()
に権限が付与されている場合は true、そうでない場合は false
hasPermission
public boolean hasPermission(java.lang.Object targetId, java.lang.String targetType, java.lang.Object permission)
インターフェースからコピーされた説明:SecurityExpressionOperations
SecurityExpressionOperations.getAuthentication()
に、指定された ID、型、許可を持つドメインオブジェクトにアクセスする許可があるかどうかを判別します。- 次で指定:
- インターフェース
SecurityExpressionOperations
のhasPermission
- パラメーター:
targetId
- アクセスを決定するドメインオブジェクトの識別子targetType
- 型 (つまり、com.example.domain.Message)permission
- ドメインオブジェクトをチェックする権限 (例: "read" ,"write" など)- 戻り値:
SecurityExpressionOperations.getAuthentication()
に権限が付与されている場合は true、そうでない場合は false
setPermissionEvaluator
public void setPermissionEvaluator(PermissionEvaluator permissionEvaluator)