2015-04-19 3 views
0

Я создал сайт Node.js WebApp и разместил его на Azure. Здесь размещается веб-узел Socket.io и веб-сайт, который я хочу защитить за формой проверки подлинности. Мой первоначальный план состоял в том, чтобы использовать ActiveDirectory, но я не могу найти никакой информации о подключении WebSocket с использованием такой аутентификации.Аутентификация Active Directory на Node.js WebSocket

Есть ли способ использовать Active Directory или другую аналогичную и легко настраиваемую аутентификацию для защиты как веб-сайта, так и WebSocket?

Я планирую подключиться к этому серверному веб-приложению с локальной машины, используя socket.io-client.

+0

используйте html + http для подключения к AD, а затем передайте его на веб-сокеты. вы можете использовать токен или что-то из html, если хотите проверить входящее соединение сокета выше и выше IP. – dandavis

+0

Если вы используете экспресс, я бы порекомендовал passjs, socket.io, затем паспорт.socketio –

ответ

0

Я хотел бы найти решение на основе HTTP, которое позволит вам взаимодействовать с активной средой каталогов. Затем вы можете объединить эту интеграцию с существующим решением WebSocket.

Эта библиотека выглядит многообещающим: https://github.com/gheeres/node-activedirectory

Это также выглядит как Azure предоставляет REST API для Active Directory: https://msdn.microsoft.com/en-us/library/azure/hh974476.aspx

Я работаю в Stormpath, у нас также есть функция Active Directory, что позволяет подключить ваш Приложение Node.JS в хранилище данных, которое синхронизируется с Active Directory. См. Integrating Stormpath with Active Directory and LDAP

Надеюсь, это поможет!

0

После долгих размышлений об простоте я решил отказаться от традиционной аутентификации ActiveDirectory от Azure. (Он блокирует WebSocket трафика, так что я не мог сделать какую-либо ручную проверку подлинности через сокеты)

я вместо того, чтобы управлять аутентификацией сайта себя с помощью Passport и какую бы ни аутентификации я выбираю Active Directory, Facebook, Google, Twitter, Github.

Для проверки подлинности Socket.io я использовал socketio-auth для защиты соединений с помощью специального уровня безопасности и аутентификации.

Смежные вопросы