Добавить текстовое поле на страницу входа OpenAM XUI

1

Я работаю над OpenAM 13.0, чтобы добавить некоторые функции для удовлетворения моих требований моего клиента.

Я хотел бы добавить CAPTCHA на страницу входа в XUI и в качестве первого шага, который я пытался добавить текстовое поле на страницу входа. Сначала я попытался настроить login.jsp в папке конфигурации и в соответствии с инструкциями клонировал папку по умолчанию и добавил некоторые элементы в login.jsp в моих конфигурационных файлах realm. Но я не видел никакого эффекта.

Затем я попытался использовать Scripted Module для добавления клиентских скриптов. Однако, когда я создал новый скрипт для добавления текстового поля, поля "Имя пользователя" и "Пароль" исчезли с страницы входа.

Мой скрипт:

$(document).ready(function(){ 
  fs = $(document.forms[0]).find("fieldset");
  var strUI='<div class="group-field-block"><label class="short">CAPTCHA:</label><input type="text" name="Captcha"/></div>';
  $(fs).append(strUI);
});

Что не так в моем JavaScript? Как лучше всего добавить некоторые поля ввода на страницу входа?

Кстати, я не могу использовать Google Recaptcha, потому что я собираюсь использовать OpenAM в локальной интрасети без доступа в Интернет.

Теги:
login
captcha
openam

1 ответ

2

Если вы пытаетесь настроить интерфейс XUI, вам не следует смотреть файлы JSP. XUI основан на статических HTML файлах и JavaScript, поэтому настройка должна выполняться по-разному. Учитывая, что вы пытаетесь добавить новое поле ввода на страницу входа в систему, на самом деле вам нужно настроить модуль аутентификации.

Каждый модуль аутентификации имеет свой предопределенный список "обратных вызовов", с которыми они могут работать, и каждый обратный вызов представляет собой своего рода "вход" для модуля аутентификации. Чтобы добавить новое окно ввода на экран входа в систему, вам не нужно просто обновлять XML-дескриптор обратного вызова модуля аутентификации (например, LDAP.xml в папке config/auth/default), но вам также необходимо будет обновить сам модуль аутентификации так что он действительно знает, что делать с этим новым значением ввода.

  • 0
    Недавно мы узнали, что не можем купить лицензию и поддержку OpenAM, потому что ForgeRock не продает продукты в Иран. Поэтому мне пришлось перестать работать над OpenAM и перейти к чему-то другому. В любом случае, спасибо за ответ.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню