У меня есть java-сайт, работающий на Apache Tomcat.
Поскольку веб-сайт находится в стадии бета-тестирования, Я не хочу, чтобы он был доступен всем в Интернете и я хочу, чтобы ограниченная группа бета-тестеров имела доступ к сайту тем самым ограничивая доступ ко всем страницам сайта.
Проблема в том, что на сайте уже использует Spring Security чтобы позволить что в конечном итоге будет аутентифицировано участниками как часть бизнес-логики приложения (например, после регистрации).
Итак, резюмируем: я хочу, чтобы к сайту имели доступ только бета-тестеры. После этого они смогут перемещаться по «общедоступным» страницам и регистрироваться в качестве участников веб-сайта, а затем перемещаться по «частным» страницам.
Поэтому я какой-то двойная аутентификация. Я не знаю, как это сделать с моим Ubuntu.
Кто-нибудь может дать совет?
Первая идея: если бета-тестеры будут использовать известные IP-адреса, просто отфильтруйте их по IP. Это может быть сделано на брандмауэре, на веб-сервере или в приложении. Если IP-адреса пользователей будут меняться, возможно, они смогут перейти на вторую веб-страницу, ввести имя пользователя и пароль, и их IP-адрес будет внесен в белый список внутри бета-приложения (или на брандмауэре / веб-сервере).
Следующая идея - спрятать бета-сайт за брандмауэром и предоставить бета-тестерам VPN, которая дает доступ. Довольно легко настроить, но теперь у вас есть проблемы с попытками предоставить учетные данные и клиентское программное обеспечение всем бета-тестерам. Если они не работают на вас напрямую, им может не понравиться установка специального программного обеспечения.
Идея четвертая: настроить squid или веб-сервер в качестве прокси. Этот прокси-сервер требует аутентификации перед передачей запроса на «настоящий» бета-сервер.