在tomcat AWS弹性beansatlk环境中添加安全性约束

时间:2016-10-20 15:40:02

标签: java eclipse amazon-web-services tomcat amazon-ec2

我正在尝试在tomcat服务器端添加安全约束,以实现整个应用程序的用户名和密码。因此,每次调用url时,安全性约束都会在访问之前进行身份验证。我们不希望像现在这样公开信息。

所以这就是我目前在WEB-INF / web.xml文件中的内容:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="tomcat-demo" version="2.4"
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <servlet>
        <servlet-name>TestServlet</servlet-name>
        <servlet-class>test.TestServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>TestServlet</servlet-name>
        <url-pattern>/test</url-pattern>
    </servlet-mapping>

    <security-constraint>
        <web-resource-collection>
            <web-resource-name>Wildcard means whole app requires authentication</web-resource-name>
            <url-pattern>/*</url-pattern>
            <http-method>GET</http-method>
            <http-method>POST</http-method>
        </web-resource-collection>
        <auth-constraint>
            <role-name>tomcat</role-name>
        </auth-constraint>

        <user-data-constraint>
            <!-- transport-guarantee can be CONFIDENTIAL, INTEGRAL, or NONE -->
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>
    </security-constraint>


</web-app>

现在,根据我的理解,我需要创建一个tomcat-users.xml。所以我也这样做了。这是代码的样子:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<tomcat-users>
  <role rolename="tomcat" />
  <role rolename="role1" />

  <user username="tomcat" password="tomcat" roles="tomcat" />
  <user username="both" password="tomcat" roles="tomcat,role1" />
  <user username="role1" password="tomcat" roles="role1" />
</tomcat-users>

现在我在这里非常困惑。我把tomcat-users.xml文件放在哪里?阅读aws文档,我需要&#34;扩展扩展Elastic Beanstalk的默认Apache配置。&#34; http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/java-tomcat-platform.html#java-tomcat-proxy-apache

说实话,我不知道如何准确地实现AWS文档的要求。所以AWS doc说要创建这样的目录:

~/workspace/my-app/
|-- .ebextensions
|   `-- httpd
|       `-- conf.d
|           `-- myconf.conf
`-- index.jsp

Eclipse neon,Mac OSX也不会让我创建一个带点的目录。那么有人可以帮助澄清tomcat-users.xml文件应该存在的位置,以便web.xml文件可以正确查看和使用它吗?或者也许更好地澄清我的问题是我的想法对吗?我是否应该考虑将tomcat-users.xml放入像AWS建议的.ebextensions目录中?

非常感谢任何帮助。谢谢!

0 个答案:

没有答案