web-dev-qa-db-ja.com

ジェンキンス-j_acegi_security_check

私はジェンキンをセットアップしようとしていますが、認証を機能させることができません。 CentOS 6.2上のTomcat6でジェンキンを実行しています。ログインを有効にすると、ログインを試みるまですべてうまくいきます。資格情報を与えてログインを押すと、Tomcatはエラーを出します:

"HTTPステータス404-要求されたリソース()は利用できません。" on http:// myserver:8080/jenkins/j_acegi_security_check

グーグルで私はこれを見つけることができます: https://issues.jenkins-ci.org/browse/JENKINS-3761

私が見つけた2つの提案された修正:

  • スタンドアロンバージョンを実行する代わりに、Tomcatでjenkinsを実行します-私はすでにそうしています。
  • ファイルの編集:WEB-INF/security/SecurityFilters.groovy-編集しようとしましたが、何も変更することができません

この作品を作るためにできることはありますか?

51
varesa

これと格闘している年齢は、ジェンキンスで認証方法を選択するときにセキュリティレルムが設定されていることを確認してください。

つまり、Jenkinsの管理→グローバルセキュリティの設定で、セキュリティレルムリストでオプションを選択します。

例えば:

enter image description here

107
Oli

以下に指定されているセキュリティレルムを選択するのを忘れている可能性があります

https://wiki.jenkins-ci.org/display/JENKINS/Standard+Security+Setup

ロックアウトしている場合は、Jenkins config.xmlファイルを元に戻して<useSecurity>true</useSecurity>ここの指示に従ってfalseにノード値

https://wiki.jenkins-ci.org/display/JENKINS/Disable+security

20

バグページ で述べたように:

このエラーは、プロキシパスルール"/jenkins http://localhost:9080/jenkins/"が原因で、着信(ジェンキンス)リクエスト"/jenkins//j_acegi_security_check"(二重//)が発生しました。そのため、ログインページは404で拒否されました(他のすべてのページは提供されていました)。

/jenkins ProxyPassのリンク先URLの末尾にスラッシュがないことを確認してください。

9
jevon

"/ jenkins/j_acegi_security_check" URI問題に対して同じHTTP 404を使用しました。

上記のpgaが指摘したのと同じ問題:Tomcatはユーザーrootとして起動されていました。

これは、「/ etc/init.d /」にスタートアップTomcatスクリプトを作成することにより、Tomcatが自動的に再起動するようにセットアップしていたためです。

次の問題を修正しました。

su - tomcatuser - c /cde/pkgs/../Tomcat/start.sh
0
Taher

私のブックマークされたジェンキンスのログインURLは: https://jenkins.foo.com/login?from=%2F

セキュリティが無効になっている場合、資格情報または空白の資格情報でそのURLにアクセスすると、j_acegiエラーが表示されます。

代わりに、 https://jenkins.foo.com/ を使用すると、ダッシュボードに直接移動します。

0
Jim Nathlich

「/ jenkins/j_acegi_security_check」ページの404でも同じ問題が発生しました。

TomcatでJenkinsを使用して、多くの解決を試みた後、次の解決策に至りました-18080をSSLリダイレクトなしのデフォルトポートとして使用しています。これはリダイレクトに関連していますが、その場合(Tomcatを使用している場合)、Tomcat-server-configurationで変更する必要があります。

/ 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

UbuntuとAIXで同じ問題に直面していましたが、本番環境で動作するために必死に必要でした。 TomcatとApache Webサーバーも試しましたが、それでも同じ問題です。

最後に、クラスローダーを次のように変更すると、スタンドアロンモードで動作します。

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

ところで、これはUbuntuの標準Jenkinsディストリビューションのデフォルト設定です。

おそらくこの問題はパッケージングに関連していますが、現時点ではこのソリューションは機能します。これで同様の問題が解決するかどうかを確認してください。

0
Sohel Khan