как обезопасить подключение laravel-echo-server - PullRequest
0 голосов
/ 04 июня 2019

Я использую с socket.io и laravel-echo-server для отправки моих событий всем клиентам по общедоступному каналу, но я хочу, чтобы только мои клиенты (например, мои мобильные приложения и веб-приложения) могли подключаться к laravel-echo-сервер, а не другие, как система-толкач с ключом приложения и секретным словом, как я могу это сделать?

обновление: наконец, я должен использовать из частного каналаи в мобильном клиенте все в порядке, но в веб-приложении (панель администратора) laravel-echo-server не может подключиться к каналу и авторизоваться с помощью csrf-token.это мой код: в шапке:

<meta name="csrf-token" content="{{ csrf_token() }}">

в JavaScript:

Echo.private('channel')
            .listen('event', (e) => {
                console.log(e);
            });

Ответы [ 2 ]

0 голосов
/ 04 июня 2019

Если вы запустите клиент: добавьте без аргумента идентификатора приложения, он будет создан для вас.После выполнения этой команды идентификатор и ключ клиента будут отображаться и сохраняться в файле laravel-echo-server.json.

В этом примере запросы будут разрешены, если оба идентификатора приложения и ключ обапредоставляется с HTTP-запросами.

Request Headers

Authorization:  Bearer skti68i...

or

http://app.dev:6001/apps/APP_ID/channels?auth_key=skti68i...
0 голосов
/ 04 июня 2019

https://laravel.com/docs/5.8/broadcasting#authorizing-channels

Частные каналы требуют авторизации, чтобы пользователь, прошедший проверку подлинности, мог фактически прослушивать канал.Это достигается путем отправки HTTP-запроса вашему приложению Laravel с именем канала и предоставления вашему приложению возможности определить, может ли пользователь прослушивать этот канал.При использовании Laravel Echo HTTP-запрос на авторизацию подписок на частные каналы будет сделан автоматически;тем не менее, вам нужно определить правильные маршруты для ответа на эти запросы.

Это немного сложно, но довольно просто.Документы проведут вас через настройку правильных маршрутов, настройку эха и т. Д.

...