Дженкинс - j_acegi_security_check - PullRequest
       13

Дженкинс - j_acegi_security_check

51 голосов
/ 13 марта 2012

Я пытаюсь настроить jenkins, но не могу заставить аутентификацию работать.Я запускаю Дженкинс на Tomcat6 на CentOS 6.2.Я включаю вход в систему, и все идет хорошо, пока я не попытаюсь войти. После ввода учетных данных и нажатия кнопки входа tomcat выдает ошибку:

"HTTP Status 404 - Запрошенный ресурс () недоступен."на http://myserver:8080/jenkins/j_acegi_security_check

По поиску я могу найти это: https://issues.jenkins -ci.org / browse / JENKINS-3761

Два предложенных мной исправления:

  • Запустите jenkins на tomcat вместо запуска автономной версии - я уже делаю это.
  • Редактирование файла: WEB-INF / security / SecurityFilters.groovy - я пытался редактировать,но я не могу заставить его что-то изменить

Могу ли я что-нибудь сделать, чтобы это сработало?

Ответы [ 10 ]

107 голосов
/ 12 января 2014

С этим боролись веками, убедитесь, что при выборе метода авторизации в Jenkins установлена ​​область безопасности,

То есть в Управление Jenkins → Настройка глобальной безопасности выберитеопция в списке Область безопасности .

Например:

enter image description here

20 голосов
/ 24 января 2014

Возможно, вы забыли выбрать область безопасности, как указано ниже

https://wiki.jenkins -ci.org / display / JENKINS / Стандарт + Безопасность + Настройка

Если вы заблокировали себя, вы можете вернуть файл config.xml в Jenkins для установки значения <useSecurity>true</useSecurity> узла равным false, следуя приведенным здесь инструкциям

https://wiki.jenkins -ci.org / display/ Дженкинс / Disable + безопасность

9 голосов
/ 24 июля 2014

Как уже упоминалось на странице ошибки :

Ошибка была вызвана правилом пропуска прокси "/jenkins http://localhost:9080/jenkins/", которое привело к поступлению (jenkins) запроса "/jenkins//j_acegi_security_check" (double //). Таким образом, страница входа была отклонена с 404 (в то время как все другие страницы, где обслуживались).

Убедитесь, что ваш /jenkins ProxyPass не заканчивается косой чертой в целевом URL.

0 голосов
/ 30 июня 2019

Мой URL для входа в систему с закладкой jenkins был: https://jenkins.foo.com/login?from=%2F

Если защита отключена, и вы указали этот URL-адрес с какими-либо учетными или пустыми данными, это вызовет ошибку j_acegi.

Вместо этого используйте https://jenkins.foo.com/, и вы попадете прямо на приборную панель.

0 голосов
/ 29 августа 2017

У меня была такая же проблема с 404 на странице "/ jenkins / j_acegi_security_check".

Используя Jenkins с Tomcat, после многих попыток решить ее, я пришел к следующему решению - я использую18080 как порт по умолчанию без SSL-перенаправления.Это связано с перенаправлением, но в этом случае (как при использовании Tomcat) его нужно изменить в конфигурации tomcat-server:

Загляните в / conf / server.xml для следующей записи:

<Connector port="18080" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443" /> 

Просто комментируя redirectPort , помог мне:

<Connector port="18080" protocol="HTTP/1.1"
    connectionTimeout="20000" />
0 голосов
/ 11 марта 2016

Вот как я решил эту проблему:

# service tomcat status
tomcat start/running, process 996

# service tomcat stop
tomcat stop/waiting

# service jenkins status
Jenkins Continuous Integration Server is not running

# service jenkins restart
 * Restarting Jenkins Continuous Integration Server jenkins                [ OK ]
# service tomcat start
tomcat start/running, process 3839

# service jenkins status
Jenkins Continuous Integration Server is running with the pid 3694

Обновите ваш браузер, и Jenkins должен быть запущен.Надеюсь, это поможет!

0 голосов
/ 06 января 2016

Видя голосование вниз: я снова сделал шаги на свежем сервере. Было ** символов, и я удалил это

Отсутствует знак $ для кота, как этот $ TOMCAT_VERSION

(и исправлено, и работает) (обновлено 28.03.2016)

Отключите защиту, как указано ниже:

http://markunsworth.com/2012/02/13/locked-yourself-out-of-jenkins/

Невозможно войти в систему jenkins и не может отключить опцию входа Или же Заблокирован логин с Дженкинсом на Tomcat.

http://xx.xxx.xxx.xxx:8080/jenkins/login?from=/jenkins/ и после заполнения UserId Password, который вообще не был установлен, всегда будет переходить на эту страницу

http://xx.xxx.xxx.xxx:8080/jenkins/j_acegi_security_check

HTTP Status 404 - описание Запрашиваемый ресурс недоступен.

У меня установлен файл .war в tomcat Мне потребовалось много времени, чтобы решить эту проблему. Я много раз полностью удалял Tomcat, Дженкинс, все папки .jenkins и т. Д. Переустанавливал, а что нет ...

Полностью удалите и Томката, и Дженкинса снова ...

Решением является правильное использование пользователя и группы, давайте посмотрим, как это сделать, выполнив следующие команды одну за другой.

Вы вошли в систему с пользователем (например, vimal) с разрешением sudo.

 vimal@h123:~$ sudo apt-get update
 vimal@h123:~$ BASE_USER=vimal
 vimal@h123:~$ sudo chown -Rf $BASE_USER:$BASE_USER /opt/

 vimal@h123:~$ USER=apache-tomcat
 vimal@h123:~$ GROUP=myjenkins
 vimal@h123:~$ TOMCAT_INSTALL_DIR=/opt
 vimal@h123:~$ TOMCAT_VERSION=apache-tomcat-8.0.23
 vimal@h123:~$ TOMCAT_URL=http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.zip

Для TOMCAT_URL скопируйте необходимую ссылку из архива / src (.zip) сайта загрузки tomcat

vimal@h123:~$ mkdir -p $TOMCAT_INSTALL_DIR
vimal@h123:~$ cd $TOMCAT_INSTALL_DIR
vimal@h123:~$ wget $TOMCAT_URL
vimal@h123:~$ unzip -q $TOMCAT_VERSION.zip
vimal@h123:~$ rm $TOMCAT_VERSION.zip

Перед запуском приведенной ниже команды вам нужно настроить JAVA_HOME, например, JAVA_HOME = "/ usr / lib / jvm / java-8-oracle /", добавив это в sudo nano / etc / environment

vimal@h123:~$ sudo chmod +x  $TOMCAT_INSTALL_DIR/$TOMCAT_VERSION/bin/*.sh
vimal@h123:~$ $TOMCAT_INSTALL_DIR/$TOMCAT_VERSION/bin/catalina.sh start
vimal@h123:~$
vimal@h123:~$ cd $TOMCAT_INSTALL_DIR/$TOMCAT_VERSION/webapps/
vimal@h123:~$ wget http://mirrors.jenkins-ci.org/war-stable/latest/jenkins.war

Подождите пару минут, пока Дженкинс не загрузится полностью. Требуется 2 ГБ памяти. Попробуйте зайти в браузер на http://xx.xxx.xxx.xxx:8080/jenkins/, и он будет работать ...

Мне потребовался один день, чтобы найти решение.

0 голосов
/ 05 июня 2014

У меня был тот же HTTP 404 с проблемой URI "/ jenkins / j_acegi_security_check".

И та же проблема, на которую указывает pga выше: Tomcat запускался как пользователь root.

Это произошло потому, что я настроил tomcat для автоматического перезапуска, создав сценарий запуска tomcat по адресу "/etc/init.d/".

Исправлена ​​проблема с:

su - tomcatuser - c /cde/pkgs/../tomcat/start.sh
0 голосов
/ 19 апреля 2013

У меня был тот же HTTP 404 в URI "/ jenkins / j_acegi_security_check".

В моем случае Jenkins работал на Tomcat, запущенном пользователем root.Остановил Tomcat и снова запустил соответствующий отдельный пользователь приложения.Проблема решена.

0 голосов
/ 28 ноября 2012

Я столкнулся с той же проблемой как в Ubuntu, так и в AIX, где я отчаянно нуждался в ней для работы в рабочих настройках. Я даже попробовал веб-серверы Tomcat и Apache, но та же проблема.

Наконец, изменив загрузчик классов следующим образом, он заработал в автономном режиме:

java -jar jenkins.war --httpPort=79802 --preferredClassLoader=java.net.URLClassLoader & 

Кстати, это настройки по умолчанию в стандартном дистрибутиве Jenkins для Ubuntu, откуда я и понял.

Возможно, проблема связана с упаковкой, но пока это решение работает. Проверьте, решает ли это подобные проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...