2017-01-08 3 views
0

У меня есть сайт Drupal и дочерний узел Moodle в Drupal.Ограничить URL-адрес пути к подсайту Moodle

В настоящее время структура URL для доступа к Moodle выглядит следующим образом: www.mydrupal.com/moodle

Я не хочу, поскольку пользователи будут непосредственно Moodle, когда они возвращаются, то есть они всегда имеют доступ к Moodle через ссылку в Drupal. Это помогает установить некоторые важные переменные сеанса.

Итак, есть ли способ обмануть часть Moodle URL-адреса - как последовательность символов, которая изменяется через равные промежутки времени? , т. Е. www.mydrupal.com/owhefihewhf

Я хочу использовать такую ​​меру, чтобы препятствовать закладке части Moodle на сайте. Может ли кто-нибудь рекомендовать такое решение?

ответ

2

Изменение URL-адреса вашего moodle регулярно включало бы обновление базы данных moodle при каждом изменении URL-адреса.

Простейшее обходное решение, которое предотвращает упомянутый выше случай (закладка), будет страницей, которая включает в себя moodle с использованием iframe, например (www.mydrupal.com/learning). Таким образом, фактический URL-адрес moodle не будет отображаться для обычного посетителя. На указанной странице можно проверить, существуют ли сеансы varaible, если да, показать iframe, иначе перенаправить на Drupal/Loginpage.

Другой вариант будет иметь собственный модуль аутентификации в Moodle, который будет либо аутентификацией пользователя Drupal для SSO, либо, по крайней мере, проверить, установлены ли ваши переменные сеанса.

+0

Спасибо за ваш вклад. Я не думал использовать iFrame, но это решение на основе iFrame во всем, что связано с веб-разработкой, а не потенциальное отверстие в петле безопасности? – sisko

+0

Это зависит от ваших целей, которые вы хотите достичь. Если это просто, чтобы предотвратить закладок фактического URL Moodle, я не вижу здесь никакой проблемы. Если вы хотите достичь того, что ваши переменные сеанса установлены на 100%, прежде чем пользователи войдут в moodle, вы обязательно измените поведение входа в moodle, например, плагин auth. Даже если вы идете по предложенному вами пути (регулярно меняя URL-адрес moodle), существует потенциальный риск того, что пользователи закроют временный URL-адрес тем временем и могут поразить ваш moodle без переменных сеанса, пока вы снова не измените URL-адрес. – Bearzi

+0

Другим вариантом может быть (возможно) выполнение материала через apache htaccess. Вы можете проверить существующие файлы cookie/заголовки, пока они не будут установлены, пользователи не смогут получить доступ к вашему moodle dir. – Bearzi

Смежные вопросы