Невозможно извлечь UserDetails в комете Listener с oauth - PullRequest
0 голосов
/ 17 января 2019

Я пытаюсь внедрить api cometd с поддержкой oauth. Я не могу извлечь основные детали из ServerMessage в моем методе Listener метаканалов.

Мой API использует токен переноса для аутентификации, и я вижу, что весенний класс безопасности вызывается перед вызовом monitorMeta (). Но я вижу, что принципал заполнен как ноль в BayeuxContext.

@Listener("/meta/*")
public void monitorMeta(ServerSession session, ServerMessage message) {      
    BayeuxContext context = message.getBayeuxContext();       
    Principal principal= context.getUserPrincipal();
}   

Как получить основные детали из SecurityHandler внутри класса слушателя cometD. Мое намерение состоит в том, чтобы извлечь идентификаторы пользователей из принципала и сохранить внутреннюю карту соединений с идентификаторами пользователей и сервером. Поэтому я буду использовать эту карту во время публикации сообщения для правильного идентификатора пользователя, соответствующего клиенту.

...