与网络地址相关的信息不应写入代码
1.6 ID_hardcodedIP
在代码中记录网络地址不利于维护和移植,也容易暴露产品的网络结构,属于安全隐患。
示例:
string host = "10.16.25.93"; // Non-compliant
foo("172.16.10.36:8080"); // Non-compliant
bar("https://192.168.73.90"); // Non-compliant
应从配置文件中获取地址,并配以加密措施:
MyConf cfg;
string host = cfg.host(); // Compliant
foo(cfg.port()); // Compliant
bar(cfg.url()); // Compliant
特殊的 IP 地址可不受本规则限制,如:
0.0.0.0
255.255.255.255
127.0.0.1-127.255.255.255