diff --git a/docs/AUDITORS.md b/docs/AUDITORS.md new file mode 100644 index 0000000..e9f53fe --- /dev/null +++ b/docs/AUDITORS.md @@ -0,0 +1,3 @@ +# ComplyTime for Auditors + +## Use-case \ No newline at end of file diff --git a/docs/COMPLIANCE_MANAGERS.md b/docs/COMPLIANCE_MANAGERS.md new file mode 100644 index 0000000..144b6ca --- /dev/null +++ b/docs/COMPLIANCE_MANAGERS.md @@ -0,0 +1,3 @@ +# ComplyTime for Compliance Managers + +## Use-case \ No newline at end of file diff --git a/docs/DEVELOPERS.md b/docs/DEVELOPERS.md new file mode 100644 index 0000000..7d57ac4 --- /dev/null +++ b/docs/DEVELOPERS.md @@ -0,0 +1,33 @@ +# ComplyTime _developer version_ + +## Use-case + +### Repositories + +#### complyscribe + +* [complyscribe](https://github.com/complytime/complyscribe) + + +#### complyctl + +* [complyctl](https://github.com/complytime/complyctl) + +`complyctl list # list available frameworks in your workspace` + +`complyctl info # get information on the framework controls, rules, and parameters` + +`complyctl plan # create and configure an OSCAL assessment plan` + +`complyctl scan # execute PVP plugins and create results artifacts` + +`complyctl generate # generate the plugin specific policy artifacts` + + +#### complytime-demos + +* [complytime-demos](https://github.com/complytime/complytime-demos) + +#### oscal-content + +* [oscal-content](https://github.com/ComplianceAsCode/oscal-content) \ No newline at end of file diff --git a/docs/develop/INSTALLATION.md b/docs/develop/INSTALLATION.md new file mode 100644 index 0000000..63a86cf --- /dev/null +++ b/docs/develop/INSTALLATION.md @@ -0,0 +1,82 @@ +# ComplyTime Installation + + +## What You'll Need + +* MacOS +* Linux machines +* Release downloads + +### Useful commands + +#### Getting the OSCAL Content + +* Fork the [`ComplianceAsCode/oscal-content`](https://github.com/ComplianceAsCode/oscal-content) repository. + +* Clone the repository using `git clone git@github.com:ComplianceAsCode/oscal-content.git`. + +* Ensure that you run the command `git remote add upstream git@github.com:ComplianceAsCode/oscal-content.git` to ensure that your fork can easily stay up-to-date with the upstream. + +```bash +# Copying OSCAL Catalogs from oscal-content +cp ~/{path-to-your-forked-oscal-content}/catalogs/ -r ~/.local/share/complytime/bundles/ + +# Copying OSCAL Profiles from oscal-content +cp ~/{path-to-your-forked-oscal-content}/profiles/ -r ~/.local/share/complytime/controls/ + +# Copying OSCAL Component Definitions from oscal-content +cp ~/{path-to-your-forked-oscal-content}/component-definitions/ -r ~/.local/share/complytime/controls/ +``` + +The ~/.local/share/complytime/bundles and controls/ will hold the catalog.json, profile.json, and the component-definition.json that will allow for use with the complyctl commands. + + + + +```shell +make build +export COMPLYTIME_DEV_MODE=1 +``` + +```bash +./bin/complyctl list # See the available frameworks +./bin/complyctl info +./bin/complyctl plan --dry-run # See default assessment plan contents +./bin/complyctl plan --dry-run --out config.yml # Create a config file to edit assessment plan +./bin/complyctl plan --scope-config config.yml # Write assessment plan to workspace + +``` + +#### Example OSCAL Content + +[ANSSI catalog.json](https://github.com/ComplianceAsCode/oscal-content/blob/main/catalogs/anssi/catalog.json) + +[RHEL10 ANSSI Minimal profile.json](https://github.com/ComplianceAsCode/oscal-content/blob/main/profiles/rhel10-anssi-minimal/profile.json) + +![rhel10 anssi catalog](https://github.com/hbraswelrh/community/blob/docs/community-template/docs/img/img/catalog.png?raw=true) + +> Once the profile content has been copied to `~/.local/share/complytime/controls/profile.json` ensure the href is "file://controls/{name-of-catalog}.json" + +![rhel10 anssi minimal profile](https://github.com/hbraswelrh/community/blob/docs/community-template/docs/img/img/profile.png?raw=true) + +[RHEL10 ANSSI Minimal component-definition.json](https://github.com/ComplianceAsCode/oscal-content/blob/main/component-definitions/rhel10/rhel10-anssi-minimal/component-definition.json) + +![rhel10 anssi minimal component definition](https://github.com/hbraswelrh/community/blob/docs/community-template/docs/img/img/compdef.png?raw=true) + +> Once the component definition content has been copied to `~/.local/share/complytime/bundles/component-definition.json` the href should be the following: "file://controls/{name-of-profile}.json" + +**`complyctl info --limit 5`** + +![info](https://github.com/hbraswelrh/community/blob/docs/community-template/docs/img/img/info.png?raw=true) + +**`complyctl info --control r30 --limit 5`** + +![info control](https://github.com/hbraswelrh/community/blob/docs/community-template/docs/img/img/info-control.png?raw=true) + +**`complyctl info --rule set_password_hashing_algorith_systemauth`** + +![info rule](https://github.com/hbraswelrh/community/blob/docs/community-template/docs/img/img/info-rule.png?raw=true) + +**`complyctl info --parameter var_accounts_maximum_age_root`** + +![info parameter](https://github.com/hbraswelrh/community/blob/docs/community-template/docs/img/img/info-parameter.png?raw=true) diff --git a/docs/img/img/catalog.png b/docs/img/img/catalog.png new file mode 100644 index 0000000..6373338 Binary files /dev/null and b/docs/img/img/catalog.png differ diff --git a/docs/img/img/compdef.png b/docs/img/img/compdef.png new file mode 100644 index 0000000..90352bf Binary files /dev/null and b/docs/img/img/compdef.png differ diff --git a/docs/img/img/info-control.png b/docs/img/img/info-control.png new file mode 100644 index 0000000..9fa2d8f Binary files /dev/null and b/docs/img/img/info-control.png differ diff --git a/docs/img/img/info-parameter.png b/docs/img/img/info-parameter.png new file mode 100644 index 0000000..19bfe36 Binary files /dev/null and b/docs/img/img/info-parameter.png differ diff --git a/docs/img/img/info-rule.png b/docs/img/img/info-rule.png new file mode 100644 index 0000000..1dcf050 Binary files /dev/null and b/docs/img/img/info-rule.png differ diff --git a/docs/img/img/info.png b/docs/img/img/info.png new file mode 100644 index 0000000..5591723 Binary files /dev/null and b/docs/img/img/info.png differ diff --git a/docs/img/img/profile.png b/docs/img/img/profile.png new file mode 100644 index 0000000..253ba1f Binary files /dev/null and b/docs/img/img/profile.png differ