[ 
https://issues.apache.org/jira/browse/KARAF-1044?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

metatech updated KARAF-1044:
----------------------------

    Description: 
I define a minimal custom realm (see attachment), hot-deploy it, then 
hot-undeploy it. 
Afterwards I cannot ssh anymore to the Karaf Console, the error message says 
that the password is wrong. 

Impact : it is not possible to change realm parameters on-the-fly, and it is 
even dangerous to do so when the server is running.  To avoid the problem, we 
configured the XML file with the realm definition as read-only.

Subsequent calls to the custom realm gives the following stack trace (caught in 
the Eclipse debugger). 

{noformat} 
Thread [camel-jetty:9020-129] (Suspended (exception 
org.osgi.service.blueprint.container.ServiceUnavailableException))  
org.apache.aries.blueprint.container.ReferenceListRecipe$ServiceDispatcher.call()
 line: 201     
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe$CgLibProxyFactory$1.loadObject()
 line: 652  
org.apache.karaf.jaas.config.JaasRealm$$EnhancerByCGLIB$$fea986d0.getName() 
line: not available 
org.apache.karaf.jaas.config.impl.OsgiConfiguration.getAppConfigurationEntry(java.lang.String)
 line: 54 
javax.security.auth.login.LoginContext.init(java.lang.String) line: 243 
javax.security.auth.login.LoginContext.<init>(java.lang.String, 
javax.security.auth.Subject) line: 367  
javax.security.auth.login.LoginContext.<init>(java.lang.String, 
javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler) 
line: 444    
com.mycompany.OsgiJAASLoginService(org.eclipse.jetty.plus.jaas.JAASLoginService).login(java.lang.String,
 java.lang.Object) line: 201    
com.mycompany.OsgiJAASLoginService.login(java.lang.String, java.lang.Object) 
line: 52   
org.eclipse.jetty.security.authentication.BasicAuthenticator.validateRequest(javax.servlet.ServletRequest,
 javax.servlet.ServletResponse, boolean) line: 77     
org.eclipse.jetty.security.ConstraintSecurityHandler(org.eclipse.jetty.security.SecurityHandler).handle(java.lang.String,
 org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, 
javax.servlet.http.HttpServletResponse) line: 439    
org.eclipse.jetty.server.Server(org.eclipse.jetty.server.handler.HandlerWrapper).handle(java.lang.String,
 org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, 
javax.servlet.http.HttpServletResponse) line: 114    
org.eclipse.jetty.server.Server.handle(org.eclipse.jetty.server.HttpConnection) 
line: 352       
org.eclipse.jetty.server.nio.SelectChannelConnector$3(org.eclipse.jetty.server.HttpConnection).handleRequest()
 line: 596        
org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete() line: 
1051      
org.eclipse.jetty.http.HttpParser.parseNext() line: 590 
org.eclipse.jetty.http.HttpParser.parseAvailable() line: 212    
org.eclipse.jetty.server.nio.SelectChannelConnector$3(org.eclipse.jetty.server.HttpConnection).handle()
 line: 426       
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle() line: 508       
org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(org.eclipse.jetty.io.nio.SelectChannelEndPoint)
 line: 34      
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run() line: 40 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run() line: 451        
java.lang.Thread.run() line: 662        
{noformat} 

Moved from ARIES-789.


  was:
I define a minimal custom realm (see attachment), hot-deploy it, then 
hot-undeploy it. 
Afterwards I cannot ssh anymore to the Karaf Console, the error message says 
that the password is wrong. 

Subsequent calls to the custom realm gives the following stack trace (caught in 
the Eclipse debugger). 

{noformat} 
Thread [camel-jetty:9020-129] (Suspended (exception 
org.osgi.service.blueprint.container.ServiceUnavailableException))  
org.apache.aries.blueprint.container.ReferenceListRecipe$ServiceDispatcher.call()
 line: 201     
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe$CgLibProxyFactory$1.loadObject()
 line: 652  
org.apache.karaf.jaas.config.JaasRealm$$EnhancerByCGLIB$$fea986d0.getName() 
line: not available 
org.apache.karaf.jaas.config.impl.OsgiConfiguration.getAppConfigurationEntry(java.lang.String)
 line: 54 
javax.security.auth.login.LoginContext.init(java.lang.String) line: 243 
javax.security.auth.login.LoginContext.<init>(java.lang.String, 
javax.security.auth.Subject) line: 367  
javax.security.auth.login.LoginContext.<init>(java.lang.String, 
javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler) 
line: 444    
com.mycompany.OsgiJAASLoginService(org.eclipse.jetty.plus.jaas.JAASLoginService).login(java.lang.String,
 java.lang.Object) line: 201    
com.mycompany.OsgiJAASLoginService.login(java.lang.String, java.lang.Object) 
line: 52   
org.eclipse.jetty.security.authentication.BasicAuthenticator.validateRequest(javax.servlet.ServletRequest,
 javax.servlet.ServletResponse, boolean) line: 77     
org.eclipse.jetty.security.ConstraintSecurityHandler(org.eclipse.jetty.security.SecurityHandler).handle(java.lang.String,
 org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, 
javax.servlet.http.HttpServletResponse) line: 439    
org.eclipse.jetty.server.Server(org.eclipse.jetty.server.handler.HandlerWrapper).handle(java.lang.String,
 org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, 
javax.servlet.http.HttpServletResponse) line: 114    
org.eclipse.jetty.server.Server.handle(org.eclipse.jetty.server.HttpConnection) 
line: 352       
org.eclipse.jetty.server.nio.SelectChannelConnector$3(org.eclipse.jetty.server.HttpConnection).handleRequest()
 line: 596        
org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete() line: 
1051      
org.eclipse.jetty.http.HttpParser.parseNext() line: 590 
org.eclipse.jetty.http.HttpParser.parseAvailable() line: 212    
org.eclipse.jetty.server.nio.SelectChannelConnector$3(org.eclipse.jetty.server.HttpConnection).handle()
 line: 426       
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle() line: 508       
org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(org.eclipse.jetty.io.nio.SelectChannelEndPoint)
 line: 34      
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run() line: 40 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run() line: 451        
java.lang.Thread.run() line: 662        
{noformat} 

Moved from ARIES-789.


    
> Custom realm undeploying corrupts default realm
> -----------------------------------------------
>
>                 Key: KARAF-1044
>                 URL: https://issues.apache.org/jira/browse/KARAF-1044
>             Project: Karaf
>          Issue Type: Bug
>          Components: karaf-config
>    Affects Versions: 2.1.3
>         Environment: ServiceMix 4.3
>            Reporter: metatech
>         Attachments: my-realm.xml
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> I define a minimal custom realm (see attachment), hot-deploy it, then 
> hot-undeploy it. 
> Afterwards I cannot ssh anymore to the Karaf Console, the error message says 
> that the password is wrong. 
> Impact : it is not possible to change realm parameters on-the-fly, and it is 
> even dangerous to do so when the server is running.  To avoid the problem, we 
> configured the XML file with the realm definition as read-only.
> Subsequent calls to the custom realm gives the following stack trace (caught 
> in the Eclipse debugger). 
> {noformat} 
> Thread [camel-jetty:9020-129] (Suspended (exception 
> org.osgi.service.blueprint.container.ServiceUnavailableException))        
> org.apache.aries.blueprint.container.ReferenceListRecipe$ServiceDispatcher.call()
>  line: 201   
> org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe$CgLibProxyFactory$1.loadObject()
>  line: 652        
> org.apache.karaf.jaas.config.JaasRealm$$EnhancerByCGLIB$$fea986d0.getName() 
> line: not available       
> org.apache.karaf.jaas.config.impl.OsgiConfiguration.getAppConfigurationEntry(java.lang.String)
>  line: 54       
> javax.security.auth.login.LoginContext.init(java.lang.String) line: 243       
> javax.security.auth.login.LoginContext.<init>(java.lang.String, 
> javax.security.auth.Subject) line: 367        
> javax.security.auth.login.LoginContext.<init>(java.lang.String, 
> javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler) 
> line: 444  
> com.mycompany.OsgiJAASLoginService(org.eclipse.jetty.plus.jaas.JAASLoginService).login(java.lang.String,
>  java.lang.Object) line: 201  
> com.mycompany.OsgiJAASLoginService.login(java.lang.String, java.lang.Object) 
> line: 52 
> org.eclipse.jetty.security.authentication.BasicAuthenticator.validateRequest(javax.servlet.ServletRequest,
>  javax.servlet.ServletResponse, boolean) line: 77   
> org.eclipse.jetty.security.ConstraintSecurityHandler(org.eclipse.jetty.security.SecurityHandler).handle(java.lang.String,
>  org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, 
> javax.servlet.http.HttpServletResponse) line: 439  
> org.eclipse.jetty.server.Server(org.eclipse.jetty.server.handler.HandlerWrapper).handle(java.lang.String,
>  org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, 
> javax.servlet.http.HttpServletResponse) line: 114  
> org.eclipse.jetty.server.Server.handle(org.eclipse.jetty.server.HttpConnection)
>  line: 352     
> org.eclipse.jetty.server.nio.SelectChannelConnector$3(org.eclipse.jetty.server.HttpConnection).handleRequest()
>  line: 596      
> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete() line: 
> 1051    
> org.eclipse.jetty.http.HttpParser.parseNext() line: 590       
> org.eclipse.jetty.http.HttpParser.parseAvailable() line: 212  
> org.eclipse.jetty.server.nio.SelectChannelConnector$3(org.eclipse.jetty.server.HttpConnection).handle()
>  line: 426     
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle() line: 508     
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(org.eclipse.jetty.io.nio.SelectChannelEndPoint)
>  line: 34    
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run() line: 40       
> org.eclipse.jetty.util.thread.QueuedThreadPool$2.run() line: 451      
> java.lang.Thread.run() line: 662      
> {noformat} 
> Moved from ARIES-789.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to