resin安全性配置

1. ip限制
在正常访问的web-app标签下,增加一个security-constrain标签即可,如下:
<host id="" root-directory=".">
      <web-app id="/admin" document-directory="/opt/www/admin" archive-path="/opt/war/admin.war" character-encoding="utf-8">
        <security-constraint>
          <web-resource-collection>
                <url-pattern>/*</url-pattern>
          </web-resource-collection>
          <ip-constraint>
                <allow>192.168.0.0/16</allow>
                <allow>10.0.0.0/8</allow>
          </ip-constraint>
        </security-constraint>
      </web-app>
</host>


url-pattern是过滤的url

allow标签表示允许访问的ip地址,默认是允许所有的。
还可以配置<deny>标签,以拒绝特定的ip。
这里的ip地址格式可以查看wiki : http://zh.wikipedia.org/wiki/IPv4 ,比如:
10.0.0.0/8 专用网络(私有网络)
192.168.0.0/16 专用网络
xxx.0/16表示这个网段的掩码,前面是16个1,即11111111.11111111.00000000.00000000
即所有192.168开头的私网地址
除了为内网开放ip权限,还可以为外网开放,比如为某个ip开放,<allow>192.168.0.101<allow>


2.用户名密码限制
在正常访问的web-app标签下,增加authenticator、login-config、security-constraint就可以配置用户名密码
 <host id="" root-directory=".">
      <web-app id="/admin" document-directory="/opt/www/admin" archive-path="/opt/war/admin.war" character-encoding="utf-8">
        <authenticator type="com.caucho.server.security.XmlAuthenticator">
                 <init>
                        <!-- username:password:role  -->
                        <user>user:pass:cms</user>
                        <password-digest>none</password-digest>
                </init>
        </authenticator>
        <login-config auth-method='basic'/>
        <security-constraint url-pattern='/*' role-name='cms'/>
      </web-app>
    </host>

猜你喜欢

转载自running.iteye.com/blog/1967001