2014-09-27 6 views
0

내 프로젝트에 securesocial 2.3을 추가했는데 잘 작동합니다. SecuredAction은 쉬운 사용자 액세스 (request.user)를 제공하며 사용자의 속성이 변경 될 때까지는 아무 문제가 없습니다. 나는 사용자 필드가 업데이트되었거나 그에 연결할 다른 사용자 객체를 제공하는 방법을 보안 사회에 알리는 방법을 모릅니다.Securesocial play 2.3 master - 업데이트 사용자

어떻게 할 수 있습니까? 아니면 내가 뭘 잘못하고 있습니까?

덕분에, 로브로

답변

2

는 SecureSocial의에는 2.3 버전이 없습니다. Play 2.3 및 마스터 SNAPSHOT 또는 3.0-M1을 사용하고 있다고 가정합니다.

일단 사용자가 인증되면 SecureSocial은 인증자를 사용하여 사용자 세션을 추적합니다. 이 모듈에는 CookieAuthenticator 및 HttpHeaderAuthenticator라는 2 개의 인증자가 내장되어 있습니다. 두 구현체 모두 AuthenticatorStore를 사용하여 인증 자의 인스턴스를 저장/검색하는 StoreBackedAuthenticator를 확장합니다.

기본 저장소 구현은 CacheService를 사용합니다. 따라서 사용자의 속성을 변경하고 반영된 내용을 원할 경우 다음과 같은 것을 호출해야합니다.

val updatedUser = <some code that changes your user> 
request.authenticator.updateUser(updatedUser) 
+0

올바른 2.3 마스터 SNAPSHOT입니다. 나는 전에 한번 'request.authenticator.updateUser (updatedUser)' 을 한번 시도했지만 작동하지 않았다. 나는 다시 tommorow 그것을 시도 할 것이다. 감사합니다. –

+0

Java API로 어떻게 처리 할 수 ​​있습니까? – Rock