0

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

4

3 回答 3

0

在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();
        }

       }

    }
于 2012-07-19T06:32:04.013 回答
0

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

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

于 2012-07-19T07:08:43.850 回答
0

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

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

于 2012-08-12T07:16:52.173 回答