private static Either <IEnumerable <ReleaseStatusLogMessage>, Unit> Failure(ValidationStage stage, string message) { return(new List <ReleaseStatusLogMessage> { new ReleaseStatusLogMessage($"Validating {stage.ToString()}: {message}") }); }
public virtual ValidationResult ValidateRule(SecretValidationRule rule, ValidationStage stage) { var validator = _context.SecretValidationRuleProcessors.FirstOrDefault(q => q.Name == rule.Validator); if (validator == null) { throw new Exception($"Validation rule type {rule.Validator} not registered"); } if (stage == ValidationStage.AfterGet && validator.ValidationStage != stage) { return(ValidationResult.SuccessResult); } return(validator.Validate(_secretContext, rule.ValidationData, _principal)); }
public virtual ValidationResult Validate(SecretDecryptionContext secretContext, ClaimsPrincipal principal, ValidationStage stage) { _secretContext = secretContext; _principal = principal; foreach (var rule in _secretContext.Secret.SecretValidationRules) { var result = ValidateRule(rule, stage); if (!result.IsValid) { return(result); } } return(ValidationResult.SuccessResult); }
public virtual ValidationResult ValidateSecret(ValidationStage stage) { return(_secretValidator.Validate(this, Principal, stage)); }