增加台湾IP屏蔽

This commit is contained in:
hy001 2026-05-09 13:50:07 +08:00
parent 8d9b3b05d3
commit 3a0a03d226
4 changed files with 26 additions and 8 deletions

View File

@ -39,10 +39,10 @@ public class LoginAccessValidationService {
"香港", "澳门", "澳門", "台湾", "台灣", "Hong Kong", "Macau", "Macao", "Taiwan"
);
private static final List<String> BLOCKED_COUNTRY_CODES = List.of(
"HK", "MO", "SG"
"HK", "MO", "SG", "TW"
);
private static final List<String> BLOCKED_COUNTRY_NAMES = List.of(
"香港", "澳门", "澳門", "Hong Kong", "Macau", "Macao", "新加坡", "Singapore"
"香港", "澳门", "澳門", "台湾", "台灣", "Hong Kong", "Macau", "Macao", "Taiwan", "新加坡", "Singapore"
);
private static final List<IpGeoProvider> IP_GEO_PROVIDERS = List.of(
new IpGeoProvider("ip.sb", "https://api.ip.sb/geoip/%s"),

View File

@ -98,11 +98,21 @@ public class LoginAccessValidationServiceTest {
}
@Test
public void allowTaiwanRegion() {
public void blockTaiwanRegion() {
JSONObject data = JSON.parseObject("""
{"country_id":"CN","country":"中国","region":"台湾"}
""");
assertFalse(LoginAccessValidationService.isBlockedIpRegion(data));
assertFalse(LoginAccessValidationService.isMainlandChina(data));
assertTrue(LoginAccessValidationService.isBlockedIpRegion(data));
}
@Test
public void blockTaiwanCountryCode() {
JSONObject data = JSON.parseObject("""
{"country_id":"TW","country":"Taiwan","region":""}
""");
assertTrue(LoginAccessValidationService.isBlockedIpRegion(data));
}
}

View File

@ -32,10 +32,10 @@ public class IpCountryUtils {
"香港", "澳门", "澳門", "台湾", "台灣", "Hong Kong", "Macau", "Macao", "Taiwan"
);
private static final List<String> BLOCKED_COUNTRY_CODES = List.of(
"HK", "MO", "SG"
"HK", "MO", "SG", "TW"
);
private static final List<String> BLOCKED_COUNTRY_NAMES = List.of(
"香港", "澳门", "澳門", "Hong Kong", "Macau", "Macao", "新加坡", "Singapore"
"香港", "澳门", "澳門", "台湾", "台灣", "Hong Kong", "Macau", "Macao", "Taiwan", "新加坡", "Singapore"
);
private static final List<IpGeoProvider> IP_GEO_PROVIDERS = List.of(
new IpGeoProvider("ip.sb", "https://api.ip.sb/geoip/%s"),

View File

@ -91,9 +91,17 @@ public class IpCountryUtilsTest {
}
@Test
public void allowTaiwanRegion() {
public void blockTaiwanRegion() {
IpCountryUtils.IpGeoData data = new IpCountryUtils.IpGeoData("CN", "中国", "台湾", "test");
assertFalse(IpCountryUtils.isBlockedIpRegion(data));
assertFalse(IpCountryUtils.isMainlandChina(data));
assertTrue(IpCountryUtils.isBlockedIpRegion(data));
}
@Test
public void blockTaiwanCountryCode() {
IpCountryUtils.IpGeoData data = new IpCountryUtils.IpGeoData("TW", "Taiwan", "", "test");
assertTrue(IpCountryUtils.isBlockedIpRegion(data));
}
}