我使用的应用程序托管安全为一个内联网网应用程序。

我有在我的下一个过滤器web.xml 文件:

<filter>
  <filter-name>employeeAccessFilter</filter-name>
  <filter-class>security.AuthorizationFilter</filter-class>
  <init-param>
      <param-name>roles</param-name>
      <param-value>employee</param-value>
  </init-param>
  <init-param>
      <param-name>onError</param-name>
      <param-value>../index.jsp</param-value>
   </init-param>
</filter>
<filter-mapping>
   <filter-name>employeeAccessFilter</filter-name>
   <url-pattern>/corporate/*</url-pattern>
</filter-mapping>

index.html 包含一个登录框。当一个用户登录在他们走到仪表板的内联网。过滤运作良好。

看一看以下情况:

  • 有人得到电子邮件与一个内联网网页,例如: http://appname.com/corporate/page.do?id=6
  • 他的点击的链接,他的默认浏览器有饼干储存,他被自动记录,并将该网页是正确显示。

但是:

  • 有人得到电子邮件与一个内联网页的链接,如: http://appname.com/corporate/page.do?id=6
  • 他的点击的链接,他的默认浏览器没有一个应用程序饼干那么他是不会自动记录。他被重新定向到的登陆屏幕上。他的日志中而他去到仪表板,而不是页中提到的链接。

是有一个简单的方法来解决这个?

我已经基本上有两种思路:

B) 使用的基本-容器管理安全,这将解决这一问题。

A) -实施内的认证过滤机制的商店被拒绝的网址的请求属性。-把拒绝的网址作为一个隐藏的场的登录框。-改变的逻辑登录使用的场url而不是总是仪表板。

他们两个看起来像一位工作?任何人有一个更好的主意吗?

有帮助吗?

解决方案

大多数网站需要登录似乎没有使用方法A例如,在栈溢出的,如果你访问的页面需要登录的,你得到重新定向到 /users/login?returnurl=..., ,这会导致一个 returnurl 现场发作为一个隐藏的领域中登录的形式。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top