Skip to content

Commit 4a9a350

Browse files
regiuss-ownjzheaux
authored andcommitted
Update websocket integration docs
1 parent f396109 commit 4a9a350

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

docs/modules/ROOT/pages/servlet/integrations/websocket.adoc

+14-7
Original file line numberDiff line numberDiff line change
@@ -365,16 +365,24 @@ Java::
365365
@Configuration
366366
public class WebSocketSecurityConfig implements WebSocketMessageBrokerConfigurer {
367367
368+
private final ApplicationContext applicationContext;
369+
370+
private final AuthorizationManager<Message<?>> authorizationManager;
371+
372+
public WebSocketSecurityConfig(ApplicationContext applicationContext, AuthorizationManager<Message<?>> authorizationManager) {
373+
this.applicationContext = applicationContext;
374+
this.authorizationManager = authorizationManager;
375+
}
376+
368377
@Override
369378
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
370379
argumentResolvers.add(new AuthenticationPrincipalArgumentResolver());
371380
}
372381
373382
@Override
374383
public void configureClientInboundChannel(ChannelRegistration registration) {
375-
AuthorizationManager<Message<?>> myAuthorizationRules = AuthenticatedAuthorizationManager.authenticated();
376-
AuthorizationChannelInterceptor authz = new AuthorizationChannelInterceptor(myAuthorizationRules);
377-
AuthorizationEventPublisher publisher = new SpringAuthorizationEventPublisher(this.context);
384+
AuthorizationChannelInterceptor authz = new AuthorizationChannelInterceptor(authorizationManager);
385+
AuthorizationEventPublisher publisher = new SpringAuthorizationEventPublisher(applicationContext);
378386
authz.setAuthorizationEventPublisher(publisher);
379387
registration.interceptors(new SecurityContextChannelInterceptor(), authz);
380388
}
@@ -386,17 +394,16 @@ Kotlin::
386394
[source,kotlin,role="secondary"]
387395
----
388396
@Configuration
389-
open class WebSocketSecurityConfig : WebSocketMessageBrokerConfigurer {
397+
open class WebSocketSecurityConfig(val applicationContext: ApplicationContext, val authorizationManager: AuthorizationManager<Message<*>>) : WebSocketMessageBrokerConfigurer {
390398
@Override
391399
override fun addArgumentResolvers(argumentResolvers: List<HandlerMethodArgumentResolver>) {
392400
argumentResolvers.add(AuthenticationPrincipalArgumentResolver())
393401
}
394402
395403
@Override
396404
override fun configureClientInboundChannel(registration: ChannelRegistration) {
397-
var myAuthorizationRules: AuthorizationManager<Message<*>> = AuthenticatedAuthorizationManager.authenticated()
398-
var authz: AuthorizationChannelInterceptor = AuthorizationChannelInterceptor(myAuthorizationRules)
399-
var publisher: AuthorizationEventPublisher = SpringAuthorizationEventPublisher(this.context)
405+
var authz: AuthorizationChannelInterceptor = AuthorizationChannelInterceptor(authorizationManager)
406+
var publisher: AuthorizationEventPublisher = SpringAuthorizationEventPublisher(applicationContext)
400407
authz.setAuthorizationEventPublisher(publisher)
401408
registration.interceptors(SecurityContextChannelInterceptor(), authz)
402409
}

0 commit comments

Comments
 (0)