登录GAE后,保护URL不被复制并粘贴到另一个浏览器中

时间:2014-08-27 15:43:52

标签: google-app-engine

我在 Google应用引擎应用中使用 Google身份验证 API进行日志记录。它正在工作,但在用户登录后,他可以复制URL,注销并重新播放他在浏览器或其他浏览器中处理的URL,无需登录即可打开页面。

我的问题是如果可能,请阻止使用Google身份验证API ,否则,任何帮助都将非常感谢。

这是我记录的代码

<% if (userService.getCurrentUser() == null)
    { %>
        <p><a href="<%= userService.createLoginURL("/home") %>">Se
        connecter</a></p>
    <% }else { %>
        <p>hI <%= userService.getCurrentUser().getNickname() %></p>
        <p><a href="<%= userService.createLogoutURL("/") %>">Se
        déconnecter</a>

  <% } %>

请这是我的web.xml代码的一部分我尝试使用Bruyere解决方案,但我无法使用我的代码 谢谢Bruyere但是我仍然不能这样做这是我的xml代码的一个例子

<!-- url for the businesses page. -->
    <servlet>
        <servlet-name>Businesses</servlet-name>
        <servlet-class>technologyBusiness.BusinessesServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>Businesses</servlet-name>
        <url-pattern>/businesses</url-pattern>
    </servlet-mapping>

    <!-- end of the url page. -->

所以,如果你能帮助我并保护我的<url-pattern>/businesses</url-pattern>网址,那将非常高兴。提前谢谢

1 个答案:

答案 0 :(得分:1)

看起来您正在使用JSP。我会在您需要登录的任何页面上放置security constraint。这样,如果他们尝试复制粘贴,则会强制他们再次登录。在“/ servlet-mapping”

下试试这个
<security-constraint>
  <web-resource-collection>
    <web-resource-name>Businesses</web-resource-name>
    <url-pattern>/businesses</url-pattern>
  </web-resource-collection>
  <auth-constraint>
    <role-name>*</role-name>
  </auth-constraint>
</security-constraint>