Я пытаюсь ограничить пользователей, позволяя им вводить/отключать часы только тогда, когда они используют компьютер компании или на месте. Есть ли способ сделать это. Я бы использовал IP или имя хоста, но у нас есть динамический IP-адрес, и имя хоста генерируется из IP-адреса, поэтому в этом случае не будет полезно, так как мы находимся за шлюзом/брандмауэром ISP.В Rails, как вы можете ограничить пользователей конкретными местоположениями или компьютерами?
ответ
Одним из способов сделать это было бы предоставление сертификата клиента SSL (TLS) на каждом компьютере, который вы хотите разрешить доступ, а затем ваш HTTP-сервер запрашивает действительный сертификат, прежде чем разрешить пользователю подключаться к вашему Rails-приложению. С Nginx, например, конфигурация может выглядеть немного так:
server {
listen 443;
ssl on;
server_name example.com;
ssl_certificate /etc/nginx/certs/server.crt;
ssl_certificate_key /etc/nginx/certs/server.key;
ssl_client_certificate /etc/nginx/certs/ca.crt;
ssl_verify_client optional;
# $ssl_client_verify now contains the result of the certificate check,
# so you could just do something like this somewhere in your config:
if($ssl_client_verify != SUCCESS) {
return 403;
}
# ...
}
Файл server.crt регулярный сертификат SSL вы получите от SSL Cert магазина. Файл ca.crt (Certificate Authority) - это тот, который вы создаете самостоятельно. Затем вы создадите знак нескольких клиентских сертификатов с сертификатом CA и сообщите nginx только о сертификатах, подписанных вашим центром сертификации. Here's a helpful article that shows you how.
Этот подход потребует от вас создания и безопасного хранения сертификата ЦС, создания (в идеале) одного сертификата на компьютер, который вы хотите разрешить, и добавления сертификата клиента на каждую машину, которая нуждается в доступе, так что это довольно немного Работа. Вы также должны быть уверены, что ваши пользователи не могут просто экспортировать сертификат клиента и установить его на своем домашнем ПК.
- 1. Как вы можете ограничить выбор намерений только конкретными приложениями?
- 2. Как вы можете ограничить использование английских символов в Rails?
- 3. ruby on rails ограничивает пользователей только конкретными данными
- 4. В Ruby, как ограничить методы в моих контроллерах конкретными пользователями?
- 5. Как вы можете перенаправить имя или поддомену в приложение Rails?
- 6. Ограничить свойство конкретными значениями
- 7. Как вы можете ограничить скорость загрузки с помощью Rails или Nginx
- 8. Как вы можете определить идентификатор пользователей MySite
- 9. Как ограничить приложение конкретными устройствами?
- 10. Rails аутентификация пользователей: можете ли вы жестко запрограммировать пользователя?
- 11. Ограничить функциональный шаблон конкретными типами?
- 12. Как вы можете ограничить память в приложениях Django WSGI?
- 13. Как вы можете ограничить потребление ОЗУ в процессе?
- 14. Как вы можете написать следующий запрос Rails в SQL?
- 15. Как ограничить доступ к файлам с конкретными расширениями в ASP.NET?
- 16. В Rails вы можете игнорировать определенные тесты?
- 17. Как вы можете ограничить доступ незарегистрированных пользователей, предоставляя зарегистрированным пользователям полный доступ?
- 18. Ограничить столбцы varchar() конкретными значениями?
- 19. Ограничить аргумент конкретными значениями в python
- 20. Вы можете найти или отфильтровать завершение Vim?
- 21. Можете ли вы использовать область в Rails?
- 22. Rails - Вы можете круглый number_to_human_size или указать DECIMALS
- 23. Как ограничить запрос оракула конкретными условиями
- 24. как получить userIds или пользователей, связанных с конкретными активами Категория
- 25. В SQL, как вы можете вычислить максимальное количество одновременных пользователей
- 26. Как ограничить пользователей вкладкой
- 27. Как вы можете ограничить ограничения Gitolite VREF только одной ветвью?
- 28. Как ограничить пользователей в activemq?
- 29. Как вы можете ограничить записи TFS Check-In специальным путем?
- 30. Rails Канкан - Как ограничить доступ пользователей пользовательского URL Route
Это не ответ, который вы хотите, но большинство провайдеров предоставляют статические IP-адреса по требованию, с небольшой вероятностью. –