summaryrefslogtreecommitdiff
path: root/internal/configuration/validator/privacy_policy.go
blob: b570916d66981aa5fd65b6f59c9ca2c16e3c6efc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package validator

import (
	"errors"
	"fmt"

	"github.com/authelia/authelia/v4/internal/configuration/schema"
)

// ValidatePrivacyPolicy validates and updates the Privacy Policy configuration.
func ValidatePrivacyPolicy(config *schema.PrivacyPolicy, validator *schema.StructValidator) {
	if !config.Enabled {
		return
	}

	switch config.PolicyURL {
	case nil:
		validator.Push(errors.New(errPrivacyPolicyEnabledWithoutURL))
	default:
		if config.PolicyURL.Scheme != schemeHTTPS {
			validator.Push(fmt.Errorf(errFmtPrivacyPolicyURLNotHTTPS, config.PolicyURL.Scheme))
		}
	}
}