在Apache环境下配置Playframework的双向HTTPS验证

httpd-ssl.conf

Listen 443

<VirtualHost _default_:443>

#   设置Apache转发与https相关的 header

#  这样在Play中就可以中国request().secure()获取是否当前为https链接

RequestHeader set X-Forwarded-Proto “https”

ProxyPreserveHost On

KK笔记:kknotes.com
本文链接地址: 在Apache环境下配置Playframework的双向HTTPS验证

转载须以超链接形式标明文章原始出处和作者信息及版权声明

Continue Reading

在PlayFramework下隐藏后台管理员登录界面的两种方法(限制IP和HTTPS)

最近在做一个网站,网站的内容有些是要管理员修改的,比如招聘信息等,但要修改的信息不是很多,因为想要尽可能的提高安全性,对管理后台的登录做了一些限制,首先想到的是对登录IP做限制,但是现在我们使用的宽带基本上都是动态IP,所以会给用户带来很多不便,于是想到了使用HTTPS,本文讲对这两种方法进行讨论,并给出相应实现。我是在Play framework的环境中开发,但是这个配置流程是普适的。

    1. 绑定IP


这个方法相当简单,在Play的Controller中使用request().remoteAddress()获取远程IP,然后对用户名进行匹配。

如果用户访问/admin/login这种地址,先判断他的IP是否在允许的IP范围内,如果不在,直接重定向到主页,入侵者是不知道这个地址是不存在,还是他的权限不能访问。

    2. 使用HTTPS双向验证


使用HTTPS双向验证并不能够达到管理登录的地址完全对用户透明,使用“绑定IP”的方法,当用户不在允许的IP地址访问/admin/login这种地址,后台可以直接把他重定向到/index, 但是使用HTTPS需要重定向到HTTPS的地址,大致的步骤如下:

转载须以超链接形式标明文章原始出处和作者信息及版权声明

Continue Reading