クラス CurrentSecurityContextArgumentResolver
java.lang.ObjectSE
org.springframework.security.web.method.annotation.CurrentSecurityContextArgumentResolver
- 実装されたすべてのインターフェース:
org.springframework.web.method.support.HandlerMethodArgumentResolver
public final class CurrentSecurityContextArgumentResolver
extends ObjectSE
implements org.springframework.web.method.support.HandlerMethodArgumentResolver
CurrentSecurityContext
アノテーションを使用して SecurityContext
を解決できます。例: 次の Controller
:@Controller public class MyController { @RequestMapping("/im") public void security(@CurrentSecurityContext SecurityContext context) { // do something with context } }また、SecurityContext から値を取得するための SpringSPEL 式をサポートすることもできます。
@Controller public class MyController { @RequestMapping("/im") public void security(@CurrentSecurityContext(expression="authentication") Authentication authentication) { // do something with context } }
SecurityContextHolder
から SecurityContextHolder.getContext()
を使用して SecurityContext
引数を解決します。SecurityContext
が null
の場合、null
が返されます。型が一致しない場合、CurrentSecurityContext.errorOnInvalidType()
が true
でない限り null
が返されます。CurrentSecurityContext.errorOnInvalidType()
は ClassCastException
SE がスローされます。
- 導入:
- 5.2
コンストラクターのサマリー
コンストラクターメソッドのサマリー
修飾子と型メソッド説明resolveArgument
(org.springframework.core.MethodParameter parameter, org.springframework.web.method.support.ModelAndViewContainer mavContainer, org.springframework.web.context.request.NativeWebRequest webRequest, org.springframework.web.bind.support.WebDataBinderFactory binderFactory) void
setBeanResolver
(org.springframework.expression.BeanResolver beanResolver) 式で使用するBeanResolver
を設定しますvoid
setSecurityContextHolderStrategy
(SecurityContextHolderStrategy securityContextHolderStrategy) 使用するSecurityContextHolderStrategy
を設定します。boolean
supportsParameter
(org.springframework.core.MethodParameter parameter)
コンストラクターの詳細
CurrentSecurityContextArgumentResolver
public CurrentSecurityContextArgumentResolver()
メソッドの詳細
supportsParameter
public boolean supportsParameter(org.springframework.core.MethodParameter parameter) - 次で指定:
- インターフェース
org.springframework.web.method.support.HandlerMethodArgumentResolver
のsupportsParameter
resolveArgument
public ObjectSE resolveArgument(org.springframework.core.MethodParameter parameter, org.springframework.web.method.support.ModelAndViewContainer mavContainer, org.springframework.web.context.request.NativeWebRequest webRequest, org.springframework.web.bind.support.WebDataBinderFactory binderFactory) - 次で指定:
- インターフェース
org.springframework.web.method.support.HandlerMethodArgumentResolver
のresolveArgument
setSecurityContextHolderStrategy
public void setSecurityContextHolderStrategy(SecurityContextHolderStrategy securityContextHolderStrategy) 使用するSecurityContextHolderStrategy
を設定します。デフォルトのアクションは、SecurityContextHolder
に格納されているSecurityContextHolderStrategy
を使用することです。- 導入:
- 5.8
setBeanResolver
public void setBeanResolver(org.springframework.expression.BeanResolver beanResolver) 式で使用するBeanResolver
を設定します- パラメーター:
beanResolver
- 使用するBeanResolver