feat: extend requireCompanion to BIRTH_PLACE and ADDRESS_COUNTRY
Same reasoning as the existing CVV/PIN/DATE entries: a bare mention
("Экскурсия в Нижний Новгород", "цены выросли в Казахстане") isn't
personal data on its own, only alongside some other PD that ties it to
a specific person. The mechanism was already generic — this only adds
two more types to the default set.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
7dd66d45bd
commit
e52e9550e6
@@ -13,7 +13,9 @@ import java.util.Set;
|
||||
* @param types типы ПД к маскированию; {@code "*"} — все известные
|
||||
* @param requireCompanion типы, которые маскируются только вместе с ПД другого типа:
|
||||
* пин-код сам по себе безвреден, пин-код рядом с номером
|
||||
* карты — уже нет; то же для даты без якорного слова
|
||||
* карты — уже нет; то же для даты без якорного слова, места
|
||||
* рождения («Нижний Новгород» в рассказе о городе — не адрес
|
||||
* клиента) и страны («цены выросли в Казахстане» — не гражданство)
|
||||
*/
|
||||
public record SystemPolicy(boolean enabled, boolean demask, MaskMode maskMode,
|
||||
Set<String> types, Set<String> requireCompanion) {
|
||||
@@ -22,7 +24,8 @@ public record SystemPolicy(boolean enabled, boolean demask, MaskMode maskMode,
|
||||
|
||||
/** Политика по умолчанию: маскируем всё, что умеем, обратное преобразование включено. */
|
||||
public static final SystemPolicy DEFAULT = new SystemPolicy(
|
||||
true, true, MaskMode.MASK, Set.of(ALL), Set.of("CVV", "PIN", "DATE"));
|
||||
true, true, MaskMode.MASK, Set.of(ALL),
|
||||
Set.of("CVV", "PIN", "DATE", "BIRTH_PLACE", "ADDRESS_COUNTRY"));
|
||||
|
||||
public SystemPolicy {
|
||||
types = Set.copyOf(types);
|
||||
|
||||
Reference in New Issue
Block a user