2016-01-06 6 views
0

Я нахожусь в дилемме. Я собираюсь вывести код на тестовый сервер (вне пределов Интернета), который обрабатывает регистрацию пользователя и аутентификацию (используя Express + Passport) для приемочных испытаний.Ограничение доступа к node.js по идентификатору пользователя

Однако я хотел бы иметь возможность ограничить доступ к тестовому серверу тем пользователям, которые будут проводить тестирование. Я знаю, что узел не поддерживает файловый механизм .htpasswd, но ищет другой способ ограничить доступ пользователей к серверу еще до начала процесса аутентификации приложения.

Все мысли приветствуются!

+0

Используете ли вы службу виртуализации серверов? Это может быть так же просто, как ограничение определенного порта на определенный IP-адрес, если это так. Кроме того, google "express ip whitelist" – Houseman

+0

Я использую службу виртуализации, но очень простую, которая не обеспечивает возможность запуска RP. Я могу использовать брандмауэр для ограничения по IP, но так как большинство из нас по прихоти DHCP, по крайней мере, хорошая часть IP-адресов может быть изменена. Я обожаю Node, но я, конечно, пропустил некоторые из простых аспектов HTTP-сервера Apache. –

+0

В двух словах я хотел бы заблокировать доступ к серверу (или, по крайней мере, к открытому порту), позволяя при этом Passport + JS-код обрабатывать аутентификацию с помощью приложения. –

ответ

0

Вы можете ограничить свой IP-адрес в своем приложении или брандмауэром сервера. Если у вас есть обратный прокси-сервер, например nginx перед узлом, вы можете настроить его для обеспечения базовой проверки подлинности через файл htpasswd.

+0

Спасибо weiyin. Мы - виртуальная команда, поэтому мы все изменили и изменили IP-адреса. Возможно, но не просто. В настоящее время мы не можем запустить RP прямо из-за службы хостинга. Я хотел бы иметь возможность запускать nginx перед узлом и может обновить наш сервер, чтобы в конце концов это сделать. Это решило бы многие проблемы. –