Repository navigation
[JENKINS-1250] Enabling matrix-based security results in 500 #24098
Description
Sorry, I wrote in Japanese.
--------------------------------------------------
バグ再現環境
WindowsXP SP2
jdk6u3
Hduson 1.175,1.176
サーブレットコンテナは内蔵のWinstone
「システムの設定」から認証を有効にし、ユーザを追加します。
「システムの設定」で、「権限管理」を変更(「Anyone can do anything」から「行列に
よる権限設定」に)します。
そうすると、エラーが発生します。
知人が言うに、OSはMacOSXとUbuntuでも内蔵のWinstoneとTomcatを使っても発生するそう
です。
なので、環境依存のバグではないと思われます。
--------------------------------------------------
error log
Status Code: 500
Exception:
Stacktrace:
org.acegisecurity.AccessDeniedException:
org.acegisecurity.providers.UsernamePasswordAuthenticationToken@4e4cd182:
Username: hudson.security.HudsonPrivateSecurityRealm$Details@bd3b2d; Password:
[PROTECTED]; Authenticated: true; Details: null; Granted Authorities:
authenticated, admin is missing Read
at hudson.security.ACL.checkPermission(ACL.java:28)
at hudson.model.View.checkPermission(View.java:102)
at hudson.model.Hudson.getTarget(Hudson.java:2169)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:309)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:298)
at hudson.security.AccessDeniedHandlerImpl.handle(AccessDeniedHandlerImpl.java:51)
at
org.acegisecurity.ui.ExceptionTranslationFilter.handleException(ExceptionTranslationFilter.java:229)
at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:176)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
at
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
at
org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
at
org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
at
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:44)
at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:85)
at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244)
at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
at java.lang.Thread.run(Unknown Source)
Originally reported by
cactusman, imported from: Enabling matrix-based security results in 500
- status: Closed
- priority: Major
- component(s): _unsorted
- resolution: Fixed
- resolved: 2008-02-03T17:14:16+00:00
- votes: 0
- watchers: 0
- imported: 2025-12-08
Raw content of original issue
Sorry, I wrote in Japanese.
--------------------------------------------------
バグ再現環境 WindowsXP SP2 jdk6u3 Hduson 1.175,1.176 サーブレットコンテナは内蔵のWinstone
「システムの設定」から認証を有効にし、ユーザを追加します。 「システムの設定」で、「権限管理」を変更(「Anyone can do anything」から「行列に よる権限設定」に)します。 そうすると、エラーが発生します。
知人が言うに、OSはMacOSXとUbuntuでも内蔵のWinstoneとTomcatを使っても発生するそう です。 なので、環境依存のバグではないと思われます。
--------------------------------------------------
error log
Status Code: 500 Exception: Stacktrace:
org.acegisecurity.AccessDeniedException: org.acegisecurity.providers.UsernamePasswordAuthenticationToken@4e4cd182: Username: hudson.security.HudsonPrivateSecurityRealm$Details@bd3b2d; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: authenticated, admin is missing Read at hudson.security.ACL.checkPermission(ACL.java:28) at hudson.model.View.checkPermission(View.java:102) at hudson.model.Hudson.getTarget(Hudson.java:2169) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:309) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:298) at hudson.security.AccessDeniedHandlerImpl.handle(AccessDeniedHandlerImpl.java:51) at org.acegisecurity.ui.ExceptionTranslationFilter.handleException(ExceptionTranslationFilter.java:229) at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:176) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:44) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:85) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.lang.Thread.run(Unknown Source)
- environment:
Platform: All, OS: All
Activity
jenkins-infra-bot commentedon Feb 2, 2008
Raw content of original comment:
Created an attachment (id=170)
error log
jenkins-infra-bot commentedon Feb 3, 2008
Raw content of original comment:
Fixed in 1.180.
The root cause of this is that you don't have the read access to the system.
Hudson tries to serve the "access denied" page, which then also failed because
of the lack of the read access.
I fixed this so that the error page is visible even when the user doesn't have
any permission.