Open Security Controls Assessment Language (OSCAL)
NIST is developing the Open Security Controls Assessment Language (OSCAL), a set of hierarchical, XML-, JSON-, and YAML-based formats that provide a standardized representations of information pertaining to the publication, implementation, and assessment of security controls. OSCAL is being developed through a collaborative approach with the public. Public contributions to this project are welcome.
With this effort, we are stressing the agile development of a set of minimal formats that are both generic enough to capture the breadth of data in scope (controls specifications), while also capable of ad-hoc tuning and extension to support peculiarities of both (industry or sector) standard and new control types.
The OSCAL website provides an overview of the OSCAL project, including an XML and JSON schema reference, examples, and other resources.
If you are interested in contributing to the development of OSCAL, refer to the contributor guidance for more information.
Project Repositories
Repository | Description |
---|---|
OSCAL | The main OSCAL project that contains the source code for the OSCAL models. |
OSCAL-Pages | The project that contains the public OSCAL website content. |
OSCAL-Reference | The project that contains the model documentation and developer reference content. |
OSCAL-Content | The project that contains examples of OSCAL model content. |
OSCAL-DEFINE | The project for managing research into the development and enhancement of OSCAL. |
Project Status
To view the latest release of OSCAL check out GitHub releases. Each release on that page provides a complete summary of the changes made in each release.
The changes made in each release are based on the excellent feedback and contributions that are received from the OSCAL community. The NIST OSCAL team is very thankful for all of it.
Any feedback may be emailed to the NIST OSCAL team at [email protected] or by creating an issue on the GitHub repository.
Looking forward, the NIST OSCAL team is excited to continue working with the OSCAL community to continue enhancing OSCAL through additional minor releases. Future efforts will include providing a more complete set of documentation for all the OSCAL layers and models, creating more examples, and providing a diverse set of tutorials.
For additional information on the OSCAL project, please see the NIST’s Cybersecurity Insights blog: “The Foundation for Interoperable and Portable Security Automation is Revealed in NIST’s OSCAL Project” and the OSCAL website.
The NIST team is also maintaining OSCAL content that is updated to the latest OSCAL revision. The OSCAL content repository provides OSCAL examples, in addition to:
- The NIST SP 800-53 revision 5 catalog and the security and privacy NIST SP 800-53B baselines.
- The NIST SP 800-53 revision 4 catalog and the three NIST SP 800-53 revision 4 baselines.
- The FedRAMP SP 800-53 revision 4 baselines.
All of this OSCAL content is provided in XML, JSON and YAML formats.
NIST is also seeking tool developers, vendors, and service providers that would like to implement the OSCAL models in commercial and open-source offerings. NIST is also seeking software and service providers that are willing to work with us to represent control implementation information about their products.
To provide feedback, to ask questions, or to let us know about an OSCAL implementation you are working on, please email the NIST OSCAL team at [email protected]. You can also post publicly to the OSCAL development list: [email protected] or create an issue on our GitHub repository.
Please find instructions for joining the OSCAL development and update lists on our contacts page. If you have any questions about OSCAL in general or if you would like to get involved in the OSCAL project, please contact us at: [email protected] or on Gitter.
Cloning this repository
Run the following Git command to clone the OSCAL repository.
git clone --recurse-submodules https://github.com/usnistgov/OSCAL.git