[ 
https://issues.apache.org/jira/browse/KNOX-2631?focusedWorklogId=704405&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-704405
 ]

ASF GitHub Bot logged work on KNOX-2631:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 06/Jan/22 05:02
            Start Date: 06/Jan/22 05:02
    Worklog Time Spent: 10m 
      Work Description: luliu8 commented on pull request #477:
URL: https://github.com/apache/knox/pull/477#issuecomment-1006286971


   fixed
   
   On Wed, Jan 5, 2022 at 1:28 PM Sandeep Moré ***@***.***>
   wrote:
   
   > ***@***.**** requested changes on this pull request.
   >
   > @luliu8 <https://github.com/luliu8> looks like unit tests are failing,
   > specifically this one
   > GatewayWebsocketHandlerTest.testValidWebShellRequest() with error
   >
   >
   > java.lang.IllegalStateException: Unable to load cache item
   >
   >    at 
org.easymock.cglib.core.internal.LoadingCache.createEntry(LoadingCache.java:79)
   >    at 
org.easymock.cglib.core.internal.LoadingCache.get(LoadingCache.java:34)
   >    at 
org.easymock.cglib.core.AbstractClassGenerator$ClassLoaderData.get(AbstractClassGenerator.java:119)
   >    at 
org.easymock.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:294)
   >    at org.easymock.cglib.proxy.Enhancer.createHelper(Enhancer.java:480)
   >    at org.easymock.cglib.proxy.Enhancer.createClass(Enhancer.java:337)
   >    at 
org.easymock.internal.ClassProxyFactory.createProxy(ClassProxyFactory.java:175)
   >    at org.easymock.internal.MocksControl.createMock(MocksControl.java:98)
   >    at org.easymock.internal.MocksControl.createMock(MocksControl.java:73)
   >    at 
org.powermock.api.easymock.PowerMock.doCreateMock(PowerMock.java:2023)
   >    at org.powermock.api.easymock.PowerMock.doMock(PowerMock.java:1970)
   >    at org.powermock.api.easymock.PowerMock.createMock(PowerMock.java:95)
   >    at 
org.apache.knox.gateway.websockets.GatewayWebsocketHandlerTest.testValidWebShellRequest(GatewayWebsocketHandlerTest.java:74)
   >    at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   >    at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
   >    at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   >    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
   >    at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:68)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl$PowerMockJUnit44MethodRunner.runTestMethod(PowerMockJUnit44RunnerDelegateImpl.java:326)
   >    at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:89)
   >    at 
org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:97)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl$PowerMockJUnit44MethodRunner.executeTest(PowerMockJUnit44RunnerDelegateImpl.java:310)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit47RunnerDelegateImpl$PowerMockJUnit47MethodRunner.executeTestInSuper(PowerMockJUnit47RunnerDelegateImpl.java:131)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit47RunnerDelegateImpl$PowerMockJUnit47MethodRunner.access$100(PowerMockJUnit47RunnerDelegateImpl.java:59)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit47RunnerDelegateImpl$PowerMockJUnit47MethodRunner$TestExecutorStatement.evaluate(PowerMockJUnit47RunnerDelegateImpl.java:147)
   >    at 
org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:258)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit47RunnerDelegateImpl$PowerMockJUnit47MethodRunner.evaluateStatement(PowerMockJUnit47RunnerDelegateImpl.java:107)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit47RunnerDelegateImpl$PowerMockJUnit47MethodRunner.executeTest(PowerMockJUnit47RunnerDelegateImpl.java:82)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl$PowerMockJUnit44MethodRunner.runBeforesThenTestThenAfters(PowerMockJUnit44RunnerDelegateImpl.java:298)
   >    at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:87)
   >    at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:50)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl.invokeTestMethod(PowerMockJUnit44RunnerDelegateImpl.java:218)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl.runMethods(PowerMockJUnit44RunnerDelegateImpl.java:160)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl$1.run(PowerMockJUnit44RunnerDelegateImpl.java:134)
   >    at 
org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:34)
   >    at 
org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:44)
   >    at 
org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl.run(PowerMockJUnit44RunnerDelegateImpl.java:136)
   >    at 
org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.run(JUnit4TestSuiteChunkerImpl.java:117)
   >    at 
org.powermock.modules.junit4.common.internal.impl.AbstractCommonPowerMockRunner.run(AbstractCommonPowerMockRunner.java:57)
   >    at 
org.powermock.modules.junit4.PowerMockRunner.run(PowerMockRunner.java:59)
   >    at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
   >    at 
com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
   >    at 
com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
   >    at 
com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:235)
   >    at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)
   > Caused by: java.lang.IllegalAccessError: class 
javax.xml.parsers.FactoryFinder (in unnamed module @0x1ba359bd) cannot access 
class jdk.xml.internal.SecuritySupport (in module java.xml) because module 
java.xml does not export jdk.xml.internal to unnamed module @0x1ba359bd
   >    at javax.xml.parsers.FactoryFinder.<clinit>(FactoryFinder.java:69)
   >    at 
javax.xml.parsers.DocumentBuilderFactory.newInstance(DocumentBuilderFactory.java:140)
   >    at 
org.apache.logging.log4j.core.config.xml.XmlConfiguration.newDocumentBuilder(XmlConfiguration.java:183)
   >    at 
org.apache.logging.log4j.core.config.xml.XmlConfiguration.<init>(XmlConfiguration.java:89)
   >    at 
org.apache.logging.log4j.core.config.xml.XmlConfigurationFactory.getConfiguration(XmlConfigurationFactory.java:46)
   >    at 
org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:558)
   >    at 
org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:478)
   >    at 
org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(ConfigurationFactory.java:322)
   >    at 
org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:695)
   >    at 
org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:716)
   >    at 
org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:270)
   >    at 
org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:245)
   >    at 
org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47)
   >    at org.apache.logging.log4j.LogManager.getContext(LogManager.java:176)
   >    at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:666)
   >    at 
org.apache.knox.gateway.audit.log4j.audit.Log4jAuditor.<init>(Log4jAuditor.java:54)
   >    at 
org.apache.knox.gateway.audit.log4j.audit.Log4jAuditService.getAuditor(Log4jAuditService.java:97)
   >    at 
org.apache.knox.gateway.webshell.WebshellWebSocketAdapter.<clinit>(WebshellWebSocketAdapter.java:46)
   >    at java.base/java.lang.Class.forName0(Native Method)
   >    at java.base/java.lang.Class.forName(Class.java:398)
   >    at 
org.easymock.cglib.core.ReflectUtils.defineClass(ReflectUtils.java:467)
   >    at 
org.easymock.cglib.core.AbstractClassGenerator.generate(AbstractClassGenerator.java:339)
   >    at org.easymock.cglib.proxy.Enhancer.generate(Enhancer.java:492)
   >    at 
org.easymock.cglib.core.AbstractClassGenerator$ClassLoaderData$3.apply(AbstractClassGenerator.java:96)
   >    at 
org.easymock.cglib.core.AbstractClassGenerator$ClassLoaderData$3.apply(AbstractClassGenerator.java:94)
   >    at 
org.easymock.cglib.core.internal.LoadingCache$2.call(LoadingCache.java:54)
   >    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
   >    at 
org.easymock.cglib.core.internal.LoadingCache.createEntry(LoadingCache.java:61)
   >    ... 44 more
   >
   > —
   > Reply to this email directly, view it on GitHub
   > <https://github.com/apache/knox/pull/477#pullrequestreview-845080060>, or
   > unsubscribe
   > 
<https://github.com/notifications/unsubscribe-auth/AOT5G5A5DEH6CJEXAKURDU3UUSZW3ANCNFSM5BSCERLQ>
   > .
   > Triage notifications on the go with GitHub Mobile for iOS
   > 
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
   > or Android
   > 
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
   >
   > You are receiving this because you were mentioned.Message ID:
   > ***@***.***>
   >
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 704405)
    Time Spent: 4.5h  (was: 4h 20m)

> KnoxSSO for Secure Shell Access
> -------------------------------
>
>                 Key: KNOX-2631
>                 URL: https://issues.apache.org/jira/browse/KNOX-2631
>             Project: Apache Knox
>          Issue Type: New Feature
>          Components: Homepage, KnoxSSO
>    Affects Versions: 1.5.0
>            Reporter: Lu Liu
>            Assignee: Lu Liu
>            Priority: Minor
>             Fix For: 2.0.0
>
>          Time Spent: 4.5h
>  Remaining Estimate: 0h
>
> While Apache Knox aids in helping to lessen the need to gain physical access
> to deployment machines, there are still numerous compelling reasons for users
> to require such access:
> 1. Debugging, log access, etc
> 2. CLI use and automation
> 3. beeline and other clients that are deployed to gateway machines
> Gaining access to a shell for these purposes currently requires the user to 
> have
> an ssh client installed and valid credentials that can be used for ssh, such 
> as:
> username and password or SSH keys. Separate management of credentials for this
> access introduces some additional complexities which may even violate 
> enterprise
> infosec policies and require the secure distribution and management of keys.
> The intent of this proposed improvement is to add a browser based terminal 
> application
> that will provide secure access to a shell on the Knox machine. Just as any 
> resource
> exposed by or hosted by Knox, you would be able to protect access to this 
> terminal
> with any of the available security providers. We would also like to make this
> available out of the box as available from the Knox Homepage. This would make 
> the
> terminal/shell available via KnoxSSO thus providing shell access with your 
> existing
> enterprise credential authenticated SSO session.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to