Я знаю, что этот вопрос на первый взгляд поражает объект безопасности, но вы знаете, как иногда могут быть клиенты.Modx, можно ли входить в систему путем передачи сведений в гиперссылке с удаленного URL-адреса?
В принципе, клиент имеет 2 сайта, один из которых построен в modx и один в asp, оба они имеют логин на месте с одним профилем пользователя, который каждый посетитель получает.
Они хотят, чтобы пользователи могли войти на сайт осины, а затем нажмите на ссылку, чтобы посетить сайт MODx и войти в систему, автоматически - Я даже не уверен, что это возможно ...
Я вы пробовали передавать те же переменные, что форма входа в систему для разных страниц, но без каких-либо успехов, я просто возвращаюсь на страницу входа каждый раз.
www.mywebsite.com/index.phpid=87&username=myusername&password=mypassword&returnUrl=%2F&service=login&Login=Login
Пробовал ли кто-нибудь еще что-нибудь подобное раньше? У меня есть код, который позволит мне что-то делать с php, но со ссылкой на сайт, который строится в asp, о котором я теперь знаю, я немного в тупике.
E2A:
я задал тот же вопрос на форуме MODx и получил это путем ответа:
Я думаю, что лучший способ должен использовать партийную регистрационную службу третьей такое как OpenID , Но это означает изменения на сайте, основанные на asp. Если вы хотите сделать это с помощью параметров URL-адреса, не используйте фрагмент «Login». «Вход» требует ввода для аутентификации пользователя. Создайте собственный фрагмент и получите использование процессора безопасности/входа (я предполагаю, что вы используете Revolution 2.2x). Сниппет может быть что-то вроде этого:
<?php
$loginContext = $modx->context->get('key');
$c = array(
'login_context' => $loginContext,
'username' => $_GET['username'],
'password' => $_GET['password'],
'returnUrl' => null,
'rememberme' => false
);
$response = $modx->runProcessor('security/login', $c);
return true;
?>
Сниппет, кажется, работает и возвращает значение 1, но это не вход меня, наверное, потому что я не знаю, что это означает
get usage of the security/login processor
Где я могу это сделать?
Передача этого в виде незашифрованного текста в GET/POST очень опасна. Вместо этого вы можете расширить регистрацию Modx, чтобы иметь опцию «запомнить меня» и использовать ее. Таким образом, им не нужно входить в систему снова и снова все время. Но многопользовательский логин, как вы говорите, сложно. Это требует времени. – OptimusCrime
Оба сайта на одном сервере? – okyanet
Я знаю, что это опасно, но клиент решил иметь единый логин для ВСЕХ их пользователей, чтобы делиться ими, а на сайте не было значимой или личной информации (ее список, как перечислять для налогоплательщиков хедж-фондов, уклоняющихся от налогов!) До тех пор, пока theyre happy так я. Взгляните на расширение опции помнить меня, по крайней мере, тогда им просто нужно войти в систему один раз. @okaynet, сайты находятся на совершенно разных серверах. – Funk247