Хорошо, я понял это.Он называется « функция шлюза » в CAS.
Моя путаница заключалась в том, что модуль Drupal CAS работал не так, как я думал.Вот что говорит клиентская часть модуля Drupal CAS:
[x] Обратитесь к серверу CAS, чтобы убедиться, что пользователь уже вошел в систему?
Это реализует функцию шлюза протокола CAS.
Итак, копаясь в коде модуля, я смог найти решение.
Исправление:
Функция phpCAS, которая реализует функцию шлюза CAS:
Здесьэто фрагмент кода, который я планирую использовать:
$is_auth = phpCAS::checkAuthentication(); // Returns TRUE or FALSE
if ($is_auth) {
phpCAS::forceAuthentication();
}
else {
// Do nothing until user is ready to authenticate.
}
У меня есть пара вариантов:
- Поместите эту функциональность в отдельный модуль "клей"
- Взломайте модуль Drupal CAS в соответствии с моими потребностями
- Попытайтесь внести улучшения и посмотрите, можно ли это внести обратно
(Если мне повезет, я могу внести свой вкладвернемся к этому модулю.)