Во-первых, пожалуйста, не отклоняйте этот вопрос - я знаю, что это ужасная ситуация, но эй, реальная жизнь не хороша.
Я разрабатываю дополнительный раздел для веб-приложения, написанного на asp.net, но в php - это в основном сделано (две части не общаются друг с другом вне базы данных - интеграция в основном просто косметические.)
Единственная проблема, с которой я столкнулся, это обнаружение в части php, когда сеанс .net истек, так что он выходит из системы и перенаправляет на страницу входа.
Я считаю, что приложение asp.net скомпилировано, но в любом случае мне не разрешено изменять его, поэтому я подумал, что, возможно, лучше всего сделать очень маленькую / простую страницу aspx, которая выводит true или false который я мог бы вызвать, используя curl из php (и передавая файлы cookie браузера.)
Возможно ли это вообще? Я не уверен, как безопасность сеанса работает на asp.net, например, может ли одно .net-приложение читать переменные сеанса другого, но если это что-то вроде php, то это будет возможно.
mypage.php --curl--> checksession.aspx --|
| |
<----------- true / false <---------------
Таким образом, моя страница выдает GET (с файлами cookie из браузера) для проверки, используя curl, checksession просто возвращает значение true или false (или что-то в этом роде), и моя страница перенаправляет на страницу входа в систему сайта, если это неверно.
Аутентификация для стороны php уже разобрана и отделена от этой проблемы.
Итак, на самом деле, мне нужно знать, могу ли я иметь простой файл .aspx, который выполняет эту проверку, и если да, то куда мне обратиться, чтобы узнать, как запрограммировать такую простую страницу? Если это просто строка или три, пожалуйста, не могли бы вы сообщить мне, какими будут эти строки (извините, я никогда не делал ничего .net ..)
Если это невозможно, то если вы не возражаете, не могли бы вы предложить альтернативные решения? Спасибо!
- РЕДАКТИРОВАТЬ -
Проведя большую часть дня с этой проблемой, я теперь думаю, что вообще использовать php для решения этой проблемы - плохая идея. На самом деле задействованы два уровня аутентификации (один из них - обычный тип входа HTTP-запроса / ответа, затем сеанс .net). Кроме того, я полностью упустил момент, когда очевидно, что эти сеансы почти наверняка будут поддерживаться IP-адрес браузера пользователя, который я должен был подделать или что-то вроде curl, так как он будет работать на сервере.
Так что я думаю, что я буду использовать jQuery где-то в заголовке моей страницы, чтобы проверять и перенаправлять по мере необходимости ... каким-то образом: /
- РЕДАКТИРОВАТЬ 2 -
Итак, способ javascript вполне соответствует моим потребностям - очевидно, это небезопасный способ ведения дел, но, к счастью, в этом случае все нормально, поскольку это просто приложение, используемое в интрасети (а неаккуратный способ аутентификации пользователей ужасен в любом случае.)