Вы могли бы попытаться использовать этот вид связи для предоставления учетных данных в нем:
http://userid:[email protected]/context-root
Проверьте, если он будет работать, и достаточно хорошо для вашего случая.
ОБНОВЛЕНИЕ
1) Другим решением может быть реализовать форму входа. Таким образом, вы должны изменить настройки безопасности в приложении и добавьте следующее в web.xml
<login-config>
<auth-method>FORM</auth-method>
<realm-name>myrealm</realm-name>
<form-login-config>
<form-login-page>login.jsp</form-login-page>
<form-error-page>login.jsp</form-error-page>
</form-login-config>
</login-config>
Затем вам нужно будет отправить запрос на POST
http://yourHost/context-root/j_security_check
с j_username=userid
и j_password=password
2) Второе решение, которое будет работать полностью без проблем, состояло бы в создании пользовательского TAI, как описано здесь - Developing a custom TAI for the Liberty profile
Соответствующий фрагмент кода с этой страницы:
import com.ibm.wsspi.security.tai.TrustAssociationInterceptor;
public class SimpleTAI implements TrustAssociationInterceptor {
...
public TAIResult negotiateValidateandEstablishTrust(HttpServletRequest req,
HttpServletResponse resp) throws WebTrustAssociationFailedException {
// Add logic to authenticate a request and return a TAI result.
String tai_user = "taiUser";
return TAIResult.create(HttpServletResponse.SC_OK, tai_user);
}
Добавьте класс TAI к профилю сервера Liberty. Используйте один из следующих способов, чтобы добавить класс TAI к профилю сервера Liberty:
- Put пользовательский класс TAI в файле JAR, например simpleTAI.jar, затем сделать файл JAR доступен в общей библиотеке , См. Настройка TAI для профиля Liberty.
- Пакет пользовательского класса TAI как функция. См. Раздел Разработка пользовательского TAI в качестве функции профиля Liberty.
В чем смысл безопасности? Возможно, просто отключите защиту приложений, а затем все ваши пользователи будут получать доступ к приложению анонимно. Может быть, мне не хватает чего-то, чего вы пытаетесь выполнить здесь ... – Gas
@Gas Спасибо за ответ. Это просто для демонстрации/обучения. Я хочу создать демоверсию, где пользователь «всегда регистрируется» как этот один пользователь. У меня есть много кода ruby, построенного на вершине захвата имени текущего пользователя в системе - все это отлично работает - теперь я просто хочу удалить необходимость заполнения этого диалогового окна, чтобы я мог отправить его в дикую природу! :) –
... Могу я просто положить его в iFrame ?! EDIT: Нет. Что-то не так, если положить его в iFrame. Я не знаю, что это такое, но в этом есть что-то не так: может кто-нибудь вспомнить, о чем я думаю? О, Боже, это 2AM. ОК. Извините за безумный StackOverflow. –