Czy możliwe jest zabezpieczenie API WebSocket za pomocą OAuth 2.0?

Wdrażam dostawcę OAuth, aby zabezpieczyć różne interfejsy API oparte na sieci Web. Najwięcej bólu głowy daje mi zabezpieczenie WebSockets przez OAuth.

Czy można to zrobić całkowicie bezpiecznie w kliencie ustawionym w przeglądarce?

Jakie ryzyko wiąże się z przeglądarką w porównaniu z aplikacją internetową z serwerem?

Chcę użyć 2-nogowego OAuth, aby ograniczyć połączenia do WebSocket, więc tylko zarejestrowani klienci mogą uzyskać połączenie WebSocket z API bez odmowy. Ponieważ połączenie WebSocket jest zawsze (!) Ustanowione po stronie klienta (z przeglądarki), czy możliwe jest zabezpieczenie accessToken przed kradzieżą i nadużyciem?
W tym momencie jedyną rzeczą, która ustawia klienta opartego na przeglądarce z aplikacji klienckiej aplikacji internetowej, jest adres URL.

Jeśli aplikacje oparte na przeglądarce są niebezpieczne, mógłbym z tym żyć, ale chcę mieć pewność, że przynajmniej aplikacje internetowe będą miały bezpieczny sposób dostępu do websocket.

Ale w tym momencie zadaję sobie pytanie, czy w ogóle potrzebny jest token dostępu, ponieważ mógłbym po prostu użyć identyfikatora URI pochodzenia jako jedynego bezpiecznego mechanizmu.

questionAnswers(2)

yourAnswerToTheQuestion