2017-10-17 83 views
0

我们需要绕过Web应用程序上的LDAP安全性来运行JUnit测试。绕过适用于JUnit的LDAP

我们有一个使用Jersey框架构建的使用Tomcat 8.5作为应用程序服务器的REST Web服务。所有的端点都可以工作,但现在是添加单元测试的时候了。我们想从周二的五种方式来测试每个darn端点,原因很明显。我们将使用JUnit来做这样的事情。

问题是,我们的网站通过LDAP进行安全保护。除了输入正确的用户名和密码外,没有办法绕过它。这当然是不切实际的。当我们运行我们的JUnit测试时,有什么方法可以绕过LDAP安全吗?我们不允许以任何方式修改安全性实现,但是如果可能的话,我们可以通过编程方式绕过它。

我知道我可能在这里缺少大量需要的信息,但我几乎不知道安全实现,只是我编写的REST端点。

有没有简单的LDAP方法?我是否需要提供任何其他信息?

+0

什么部分的代码是做实际的认证?难道不能被嘲笑吗? –

回答

1

您可以使用Jersey测试框架来运行您的单元测试而无需启动容器。这也应该允许您绕过任何安全性,因为您的测试正在控制测试实例配置。

漂亮的基本教程:http://www.logicbig.com/tutorials/java-ee-tutorial/jax-rs/jax-rs-unit-testing/

+0

谢谢!我会研究这个(我以为我几天前发布了这个评论,但看起来它消失了)。 – Frecklefoot

+0

他们删除了这样的评论,因为他们是非常典型的) –

+0

谢谢,Aleh!这工作。现在我们有工作单元测试!再次感谢! – Frecklefoot

1

如果您正在使用LDAP,该认证可以像基本冒充。如果您知道用户名和密码,请将标题“Authorization”附加值“Basic base64_token”。

base64标记是一个字符串,它是用您的用户名和密码进行base64编码的,格式为username:password。理想情况下,这应该起作用。

+0

谢谢。我会研究这个。 – Frecklefoot

+0

@Frecklefoot它有用吗? – thatrockbottomprogrammer

+0

获取抛出其他东西的ATM。我会在什么时候看看。 – Frecklefoot

相关问题