Несоответствие аудитории в режиме разработки
В настоящее время пытаюсь разработать систему входа / регистрации на основе browserid.
У меня есть сервер с локальным IP-адресом 192.168.0.106, который работает на "http://localhost"
Процесс работает отлично, когда вы делаете это из браузера на сервере, отправляя подтверждение аудитории: "localhost"
Проблема заключается в том, что когда я пытаюсь определить с другого компьютера в той же локальной сети, адрес которого не localhost, а что-то вроде 192.168.0.101: процесс проверки возвращает ошибку "несоответствие аудитории", потому что клиент подключается к 192.168.0.106 (локальный адрес сервера) а не localhost
Есть идеи или предложения?
1 ответ
Проверка соответствия аудитории проверяющей стороной заключается в том, чтобы убедиться, что выданное вами утверждение свежо и не было получено с другого сайта.
В "производственном" вы обычно знаете адрес, по которому клиенты будут подключаться к вашему сайту, и жестко запрограммируете его в своем вызове для верификатора.
В разработке есть 2 варианта, которые я использовал: 1. добавить явное сопоставление к файлам /etc/hosts от клиентов, с которыми я тестирую, поэтому все используют один и тот же адрес 2. используют значение из заголовка "Host" как ценность для аудитории (это может быть совершенно небезопасно в зависимости от используемого промежуточного программного обеспечения / посредников, поэтому это следует делать только в процессе разработки)