因此,目前我正在与AKS合作,我的团队目前正在使用TwistLock,我们注意到我们使用的基本docker映像存在一个严重漏洞。我只是想知道是否有人知道一种干净的方法可以使它按预期方式运行?
因此,为了通过该严重漏洞,我已经在Dockerfile中实现了以下代码段,我主要是将其作为测试进行,我几乎没有希望它能真正起作用。令人惊讶的是,它的工作超出了我的想象,但事不宜迟,这里是代码:
## Remove dependencies for twistlock.
RUN rm -r /opt/jboss/wildfly/modules/system/layers/base/com/fasterxml/jackson/core/jackson-databind/
RUN rm -r /opt/jboss/wildfly/modules/system/layers/base/org/apache/commons/beanutils/
RUN rm -r /opt/jboss/wildfly/modules/system/layers/base/org/picketlink/
RUN rm -r /opt/jboss/wildfly/bin/client
我决定手动尝试删除与WildFly本身相关的依赖项,但是毫不奇怪,这导致应用程序无法成功部署。
即使我像这样在pom文件中指定了依赖项,它仍然不起作用:
<!-- ... Other parts of the pom ... -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.10</version><!--$NO-MVN-MAN-VER$-->
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.10</version><!--$NO-MVN-MAN-VER$-->
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.10</version><!--$NO-MVN-MAN-VER$-->
</dependency>
</dependencies>
<!-- ... Other parts of the pom ... -->
我也尝试过使用以下代码包含jboss-deployment-structure.xml
文件:
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.1">
<deployment>
<exclusions>
<module name="com.fasterxml.jackson.core.jackson-core" />
<module name="com.fasterxml.jackson.core.jackson-databind" />
<module name="com.fasterxml.jackson.core.jackson-annotations" />
</exclusions>
</deployment>
</jboss-deployment-structure>
不足为奇的是,我在日志中收到以下错误,但我想知道是否有可能完全解决此问题:
很显然,我远远无法找到合适的解决方案,并且不幸的是,JBoss / WildFly配置/管理远非我的专业领域之一。
有人有任何可能的解决方案吗?
[非常感谢,在尝试解决这个问题之后,我相信我已经找到了最合适的解决方案,但幸运的是,我似乎处在正确的位置,但是我只需要添加一些额外的内容。这就像更新我的jboss-deployment-structure.xml
文件以利用以下标记一样简单:
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
<deployment>
<exclusions>
<module name="com.fasterxml.jackson.core.jackson-core" />
<module name="com.fasterxml.jackson.core.jackson-databind" />
<module name="com.fasterxml.jackson.core.jackson-annotations" />
<module name="com.fasterxml.jackson.jaxrs.jackson-jaxrs-json-provider" />
<module name="org.jboss.resteasy.resteasy-jackson2-provider" />
<module name="org.jboss.resteasy.resteasy-jackson-provider" />
</exclusions>
</deployment>
</jboss-deployment-structure>
我已经能够成功部署正在处理的应用程序,现在仅存在一个漏洞,它超出了应用程序层的范围。