Здравствуйте и спасибо за ваше время,
Я создал веб-сайт, который я хочу опубликовать и который доступен только для колледжа, в котором я учусь. Самый простой способ, который я могу себе представить, — это использовать уже существующую систему входа в систему, которую мы используем в кампусе. Проблема в том, что в нашем кампусе нет никакой реализации для сторонней аутентификации. Я спросил своего профессора, который управляет частью веб-сайта, и он сказал, что они позволят использовать его, если он будет создан, но я не смогу использовать какую-либо форму API или какой-либо из их веб-служб, потому что он недоступен для третьи стороны.
Возможно ли, чтобы мой сайт проверил, вошел ли пользователь в кампус веб-почты или Moodle, а затем подтвердил подлинность пользователя для использования моего сайта?
Решение не должно быть сложным, но если возможно, оно должно включать в себя, как реализовать уже существующую систему входа в систему.
Спасибо за ваше время
То, что вы хотите сделать (если я правильно понимаю), ЧРЕЗВЫЧАЙНО плохая идея с точки зрения безопасности. Если кто-то, кто работал на их сайте, чего-то стоит, любой метод, который вы могли бы использовать для этого, уже заблокирован. При этом я могу дать вам теоретический способ сделать это, и если это сработает, вы должны пойти к своему профессору и сказать им, чтобы остановить это.
Нет никакого способа, которым вы можете использовать javascript / html, чтобы напрямую делать то, что вы хотите, чтобы это вышло
http://en.wikipedia.org/wiki/Same-origin_policy
Однако вы можете сделать так, чтобы ваша форма входа в систему отправляла ее обратно на ваш собственный сервер, где у вас есть скрипт php, написанный для использования curl.
http://php.net/manual/en/function.curl-init.php
Вам нужно будет войти на сайт своего колледжа и посмотреть, отправляются ли / какие данные публикации, а затем использовать curlopt, чтобы имитировать их. Измените имя пользователя / пароль для записи, используя те, которые указаны в вашей форме на вашем сайте.
Прочитайте ответ на ваш запрос curl и найдите уникальные идентификаторы между хорошим логином и плохим (т. Е. «Неверное имя пользователя» для плохого «Добро пожаловать назад» для хорошего) Извлеките другую необходимую информацию, т. Е. Div id = name> This
Затем перенаправьте клиента на страницу входа / оповещения с неверным паролем.
В любом случае, вы сможете выяснить это с помощью ajax / curl (если ваш колледж не заблокировал это), если вам нужна помощь с реальным комментарием к коду, но большая часть этого зависит от вашего CURLOPT_POSTFIELDS / CURLOPT_REFERER и т. Д., Которые я не могу дать вам, вы можете легко получить с firebug или тому подобное, хотя
Других решений пока нет …