Module: Legion::Compliance
- Defined in:
- lib/legion/compliance.rb,
lib/legion/compliance/phi_tag.rb,
lib/legion/compliance/phi_erasure.rb,
lib/legion/compliance/phi_access_log.rb
Defined Under Namespace
Modules: PhiAccessLog, PhiErasure, PhiTag
Constant Summary
collapse
- DEFAULTS =
{
enabled: true,
classification_level: 'confidential',
phi_enabled: true,
pci_enabled: true,
pii_enabled: true,
fedramp_enabled: true,
log_redaction: true,
cache_phi_max_ttl: 3600
}.freeze
Class Method Summary
collapse
Class Method Details
.classification_level ⇒ Object
48
49
50
|
# File 'lib/legion/compliance.rb', line 48
def classification_level
setting(:classification_level) || 'confidential'
end
|
.enabled? ⇒ Boolean
28
29
30
|
# File 'lib/legion/compliance.rb', line 28
def enabled?
setting(:enabled) == true
end
|
.fedramp_enabled? ⇒ Boolean
44
45
46
|
# File 'lib/legion/compliance.rb', line 44
def fedramp_enabled?
setting(:fedramp_enabled) == true
end
|
.pci_enabled? ⇒ Boolean
36
37
38
|
# File 'lib/legion/compliance.rb', line 36
def pci_enabled?
setting(:pci_enabled) == true
end
|
.phi_enabled? ⇒ Boolean
32
33
34
|
# File 'lib/legion/compliance.rb', line 32
def phi_enabled?
setting(:phi_enabled) == true
end
|
.pii_enabled? ⇒ Boolean
40
41
42
|
# File 'lib/legion/compliance.rb', line 40
def pii_enabled?
setting(:pii_enabled) == true
end
|
.profile ⇒ Object
52
53
54
55
56
57
58
59
60
61
62
|
# File 'lib/legion/compliance.rb', line 52
def profile
{
classification_level: classification_level,
phi: phi_enabled?,
pci: pci_enabled?,
pii: pii_enabled?,
fedramp: fedramp_enabled?,
log_redaction: setting(:log_redaction) == true,
cache_phi_max_ttl: setting(:cache_phi_max_ttl) || 3600
}
end
|
.setup ⇒ Object
21
22
23
24
25
26
|
# File 'lib/legion/compliance.rb', line 21
def setup
return unless defined?(Legion::Settings)
Legion::Settings.merge_settings(:compliance, DEFAULTS)
Legion::Logging.info('[Compliance] max-classification profile active') if defined?(Legion::Logging)
end
|