【问题标题】:war file in client-side deployment客户端部署中的war文件
【发布时间】:2012-07-17 05:24:42
【问题描述】:

如何在war文件中设置密码???我可以在war文件中设置IP地址,mac地址然后在部署这个war之前检查IP地址,mac地址吗?如果这些地址正确然后部署war文件?

【问题讨论】:

    标签: java war


    【解决方案1】:

    在war中进行IP地址检查,mac地址检查等,因此即使部署了war,如果ip或mac地址不正确,它也将不起作用。即....像那样更改战争中的代码

    下面给出了一个获取IP地址和MAC地址的示例java程序

     import java.net.InetAddress;
        import java.net.NetworkInterface;
        import java.net.SocketException;
        import java.net.UnknownHostException;
    
        public class MACandIP{
    
           public static void main(String[] args){
    
            InetAddress ipAddress;
                byte[] macAddress;
            try {
    
                ipAddress = InetAddress.getLocalHost();
                System.out.println("IP address =" + ipAddress.getHostAddress());
                NetworkInterface networkInt = NetworkInterface.getByInetAddress(ipAddress);
                macAddress = networkInt.getHardwareAddress();
                StringBuilder strBld = new StringBuilder();
                        System.out.print("MAC address = ");
                for (int i = 0; i < macAddress.length; i++) {
                    strBld.append(String.format("%02X%s", macAddress[i], (i < macAddress.length - 1) ? "-" : ""));
                }
                System.out.println(strBld.toString());
    
     //in above code assume you got MAC address as  81-7B-39-C5-A6-D4 
    
                    if(strBld.toString().equalsIgnoreCase("81-7B-39-C5-A6-D4")){
                        // mac is correct 
                    }
    
            } catch (UnknownHostException excep) {
    
                excep.printStackTrace();
    
            } catch (SocketException exce){
                exce.printStackTrace();
            }
    
           }
    
        }
    

    【讨论】:

    • 如何在war文件中设置客户端mac地址。然后war文件只部署那个mac地址。给我代码?
    • 如果你在war中更改代码,那么每个人都可以部署war,但只有IP(或MAC)正确的用户才能使用它
    • 这个我知道。但是我的问题是如何在war文件中设置mac地址(检查过程)?
    • 在这段代码中mac地址不能检查定义客户端mac地址?
    【解决方案2】:

    我建议你不要在war文件中进行所有这些验证,毕竟这只是一个文件,如果有人想替换它,无论你在war中进行什么验证和检查,他都可以替换文件。

    您需要做的是编写一个部署脚本,为它提供要部署的新战争,然后该脚本会执行所有验证并替换战争文件。

    【讨论】:

    • 问题是如何保护战争文件部署。如果该客户端将此战争文件发送到另一个地方战争文件不起作用?任何解决方案?
    【解决方案3】:

    WAR 格式和 servlet API 在部署前不支持任何形式的保护。此外,任何纯软件方案都可以被破解。

    您检查的有效许可证密钥和“没有有效许可证的代码不受支持”的组合很可能是您所期望的最佳结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-04
      • 2016-04-18
      • 2012-09-19
      • 2015-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多