| 264 | } |
| 265 | |
| 266 | func (cnf *Configuration) validateAndAddDefaults() error { |
| 267 | if err := cnf.validateRequiredFields(); err != nil { |
| 268 | return err |
| 269 | } |
| 270 | |
| 271 | cnf.setDefaultValues() |
| 272 | cnf.trimWhitespace() |
| 273 | cnf.setupRateLimiting() |
| 274 | |
| 275 | // Validate tokenization secret length (AES-256 requires 32 bytes) |
| 276 | if len(cnf.TokenizationSecret) > 0 && len(cnf.TokenizationSecret) != 32 { |
| 277 | logrus.Warn("tokenization secret should be 32 bytes for AES-256 encryption") |
| 278 | } |
| 279 | |
| 280 | return nil |
| 281 | } |
| 282 | |
| 283 | func (cnf *Configuration) validateRequiredFields() error { |
| 284 | if cnf.DataSource.Dns == "" { |