FieldPolicyProperties

data class FieldPolicyProperties(val field: String, val strategy: MaskingStrategy = MaskingStrategy.HIDE, val placeholder: String? = null)

The config representation of a single field's masking rule, bound from ihawu.policies[].roles.<role>[] and mapped to a core org.ihawu.core.policy.FieldPolicy by the default provider.

Kept as a starter-local binding shape so ihawu-core's FieldPolicy never becomes part of the configuration contract (see ADR 0004).

Constructors

Link copied to clipboard
constructor(field: String, strategy: MaskingStrategy = MaskingStrategy.HIDE, placeholder: String? = null)

Properties

Link copied to clipboard

The property name to mask. Required; an empty value is rejected at startup.

Link copied to clipboard

The replacement written when redacting; ignored by HIDE. When null, the strategy's own default value is used.

Link copied to clipboard

How the field is masked, bound by enum name (HIDE/REDACT). Defaults to the stricter org.ihawu.core.masking.MaskingStrategy.HIDE so an under-specified rule errs towards hiding.