assessment_plan
trestle.oscal.assessment_plan
¤
Classes¤
AssessmentPlan (OscalBaseModel)
pydantic-model
¤
An assessment plan, such as those provided by a FedRAMP assessor.
Source code in trestle/oscal/assessment_plan.py
class AssessmentPlan(OscalBaseModel):
"""
An assessment plan, such as those provided by a FedRAMP assessor.
"""
class Config:
extra = Extra.forbid
uuid: constr(
regex=r'^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[45][0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$'
) = Field(
...,
description=
'A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this assessment plan in this or other OSCAL instances. The locally defined UUID of the assessment plan can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.',
title='Assessment Plan Universally Unique Identifier',
)
metadata: common.Metadata
import_ssp: common.ImportSsp = Field(..., alias='import-ssp')
local_definitions: Optional[LocalDefinitions] = Field(
None,
alias='local-definitions',
description=
'Used to define data objects that are used in the assessment plan, that do not appear in the referenced SSP.',
title='Local Definitions'
)
terms_and_conditions: Optional[TermsAndConditions] = Field(
None,
alias='terms-and-conditions',
description=
'Used to define various terms and conditions under which an assessment, described by the plan, can be performed. Each child part defines a different type of term or condition.',
title='Assessment Plan Terms and Conditions'
)
reviewed_controls: common.ReviewedControls = Field(..., alias='reviewed-controls')
assessment_subjects: Optional[List[common.AssessmentSubject]] = Field(None, alias='assessment-subjects')
assessment_assets: Optional[common.AssessmentAssets] = Field(None, alias='assessment-assets')
tasks: Optional[List[common.Task]] = Field(None)
back_matter: Optional[common.BackMatter] = Field(None, alias='back-matter')
Attributes¤
__class_vars__
special
¤
__custom_root_type__
special
¤
__doc__
special
¤
__exclude_fields__
special
¤
__fields__
special
¤
__include_fields__
special
¤
__post_root_validators__
special
¤
__pre_root_validators__
special
¤
__private_attributes__
special
¤
__schema_cache__
special
¤
__signature__
special
¤
__slots__: Tuple[str, ...]
special
¤
__validators__
special
¤
assessment_assets: AssessmentAssets
pydantic-field
¤
assessment_subjects: List[trestle.oscal.common.AssessmentSubject]
pydantic-field
¤
back_matter: BackMatter
pydantic-field
¤
import_ssp: ImportSsp
pydantic-field
required
¤
local_definitions: LocalDefinitions
pydantic-field
¤
Used to define data objects that are used in the assessment plan, that do not appear in the referenced SSP.
metadata: Metadata
pydantic-field
required
¤
reviewed_controls: ReviewedControls
pydantic-field
required
¤
tasks: List[trestle.oscal.common.Task]
pydantic-field
¤
terms_and_conditions: TermsAndConditions
pydantic-field
¤
Used to define various terms and conditions under which an assessment, described by the plan, can be performed. Each child part defines a different type of term or condition.
uuid: ConstrainedStrValue
pydantic-field
required
¤
A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this assessment plan in this or other OSCAL instances. The locally defined UUID of the assessment plan can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.
Config
¤
Source code in trestle/oscal/assessment_plan.py
class Config:
extra = Extra.forbid
LocalDefinitions (OscalBaseModel)
pydantic-model
¤
Used to define data objects that are used in the assessment plan, that do not appear in the referenced SSP.
Source code in trestle/oscal/assessment_plan.py
class LocalDefinitions(OscalBaseModel):
"""
Used to define data objects that are used in the assessment plan, that do not appear in the referenced SSP.
"""
class Config:
extra = Extra.forbid
components: Optional[List[common.SystemComponent]] = Field(None)
inventory_items: Optional[List[common.InventoryItem]] = Field(None, alias='inventory-items')
users: Optional[List[common.SystemUser]] = Field(None)
objectives_and_methods: Optional[List[common.LocalObjective]] = Field(None, alias='objectives-and-methods')
activities: Optional[List[common.Activity]] = Field(None)
remarks: Optional[str] = None
__class_vars__
special
¤
__custom_root_type__
special
¤
__doc__
special
¤
__exclude_fields__
special
¤
__fields__
special
¤
__include_fields__
special
¤
__post_root_validators__
special
¤
__pre_root_validators__
special
¤
__private_attributes__
special
¤
__schema_cache__
special
¤
__signature__
special
¤
__slots__: Tuple[str, ...]
special
¤
__validators__
special
¤
activities: List[trestle.oscal.common.Activity]
pydantic-field
¤
components: List[trestle.oscal.common.SystemComponent]
pydantic-field
¤
inventory_items: List[trestle.oscal.common.InventoryItem]
pydantic-field
¤
objectives_and_methods: List[trestle.oscal.common.LocalObjective]
pydantic-field
¤
remarks: str
pydantic-field
¤
users: List[trestle.oscal.common.SystemUser]
pydantic-field
¤
Config
¤
Source code in trestle/oscal/assessment_plan.py
class Config:
extra = Extra.forbid
Model (OscalBaseModel)
pydantic-model
¤
Source code in trestle/oscal/assessment_plan.py
class Model(OscalBaseModel):
assessment_plan: AssessmentPlan = Field(..., alias='assessment-plan')
__class_vars__
special
¤
__custom_root_type__
special
¤
__doc__
special
¤
__exclude_fields__
special
¤
__fields__
special
¤
__include_fields__
special
¤
__post_root_validators__
special
¤
__pre_root_validators__
special
¤
__private_attributes__
special
¤
__schema_cache__
special
¤
__signature__
special
¤
__slots__: Tuple[str, ...]
special
¤
__validators__
special
¤
assessment_plan: AssessmentPlan
pydantic-field
required
¤
TermsAndConditions (OscalBaseModel)
pydantic-model
¤
Used to define various terms and conditions under which an assessment, described by the plan, can be performed. Each child part defines a different type of term or condition.
Source code in trestle/oscal/assessment_plan.py
class TermsAndConditions(OscalBaseModel):
"""
Used to define various terms and conditions under which an assessment, described by the plan, can be performed. Each child part defines a different type of term or condition.
"""
class Config:
extra = Extra.forbid
parts: Optional[List[common.AssessmentPart]] = Field(None)
__class_vars__
special
¤
__custom_root_type__
special
¤
__doc__
special
¤
__exclude_fields__
special
¤
__fields__
special
¤
__include_fields__
special
¤
__post_root_validators__
special
¤
__pre_root_validators__
special
¤
__private_attributes__
special
¤
__schema_cache__
special
¤
__signature__
special
¤
__slots__: Tuple[str, ...]
special
¤
__validators__
special
¤
parts: List[trestle.oscal.common.AssessmentPart]
pydantic-field
¤
Config
¤
Source code in trestle/oscal/assessment_plan.py
class Config:
extra = Extra.forbid
handler: python