Documentation
¶
Index ¶
- type DefinitionBuilder
- func (c *DefinitionBuilder) AddParameterModifiers(referenceId string, modifiers []ParameterModifier) *DefinitionBuilder
- func (c *DefinitionBuilder) AddTargetComponent(targetComponent, componentType string, catalog layer2.Catalog, ...) *DefinitionBuilder
- func (c *DefinitionBuilder) AddValidationComponent(evaluationPlan layer4.EvaluationPlan) *DefinitionBuilder
- func (c *DefinitionBuilder) Build() oscalTypes.ComponentDefinition
- type Parameter
- type ParameterModifier
- type Parameters
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DefinitionBuilder ¶
type DefinitionBuilder struct {
// contains filtered or unexported fields
}
DefinitionBuilder constructs an OSCAL Component Definition from Gemara inputs.
func NewDefinitionBuilder ¶
func NewDefinitionBuilder(title, version string) *DefinitionBuilder
func (*DefinitionBuilder) AddParameterModifiers ¶
func (c *DefinitionBuilder) AddParameterModifiers(referenceId string, modifiers []ParameterModifier) *DefinitionBuilder
AddParameterModifiers takes parameter modifications for a given Layer 2 reference and creates OSCAL set-parameters on the associated control set implementations. This will only take effect if the Layer 2 Catalogs has been added through AddTargetComponent.
func (*DefinitionBuilder) AddTargetComponent ¶
func (c *DefinitionBuilder) AddTargetComponent(targetComponent, componentType string, catalog layer2.Catalog, parameters Parameters) *DefinitionBuilder
func (*DefinitionBuilder) AddValidationComponent ¶
func (c *DefinitionBuilder) AddValidationComponent(evaluationPlan layer4.EvaluationPlan) *DefinitionBuilder
func (*DefinitionBuilder) Build ¶
func (c *DefinitionBuilder) Build() oscalTypes.ComponentDefinition
type Parameter ¶
type Parameter struct {
Id string `json:"id" yaml:"id"`
Description string `yaml:"description,omitempty"`
Default any `yaml:"default,omitempty"`
}
Parameter define a "knob" that can be tuned on an Assessment Requirement
type ParameterModifier ¶
type ParameterModifier struct {
TargetId string `yaml:"target-id"`
ModType layer3.ModType `yaml:"modification-type"`
ModificationRationale string `yaml:"modification-rationale"`
Description string `yaml:"description,omitempty"`
Value any `yaml:"value"`
}
ParameterModifier defines a modification to the default parameter value
type Parameters ¶
Parameters maps a slice of parameters to an assessment requirement id.
func (*Parameters) Load ¶
func (p *Parameters) Load(filePath string) error
Load populates parameters from a file path
Click to show internal directories.
Click to hide internal directories.