Skip to content

Commit 97ca6e2

Browse files
bilzinhocolek42
authored andcommitted
docs: edit of all witness docs
1 parent 98d8714 commit 97ca6e2

19 files changed

Lines changed: 86 additions & 79 deletions

cmd/witness/options/key.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ type KeyOptions struct {
2929
func (ko *KeyOptions) AddFlags(cmd *cobra.Command) {
3030
cmd.Flags().StringVarP(&ko.KeyPath, "key", "k", "", "Path to the signing key")
3131
cmd.Flags().StringVar(&ko.CertPath, "certificate", "", "Path to the signing key's certificate")
32-
cmd.Flags().StringSliceVarP(&ko.IntermediatePaths, "intermediates", "i", []string{}, "Intermediates that link trust back to a root in the policy")
32+
cmd.Flags().StringSliceVarP(&ko.IntermediatePaths, "intermediates", "i", []string{}, "Intermediates that link trust back to a root of trust in the policy")
3333
cmd.Flags().StringVar(&ko.SpiffePath, "spiffe-socket", "", "Path to the SPIFFE Workload API socket")
3434
cmd.Flags().StringVar(&ko.FulcioURL, "fulcio", "", "Fulcio address to sign with")
3535
cmd.Flags().StringVar(&ko.OIDCIssuer, "fulcio-oidc-issuer", "", "OIDC issuer to use for authentication")

cmd/witness/options/run.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ type RunOptions struct {
2828

2929
func (ro *RunOptions) AddFlags(cmd *cobra.Command) {
3030
ro.KeyOptions.AddFlags(cmd)
31-
cmd.Flags().StringVarP(&ro.WorkingDir, "workingdir", "d", "", "Directory that commands will be run from")
31+
cmd.Flags().StringVarP(&ro.WorkingDir, "workingdir", "d", "", "Directory from which commands will run")
3232
cmd.Flags().StringSliceVarP(&ro.Attestations, "attestations", "a", []string{"environment", "git"}, "Attestations to record")
33-
cmd.Flags().StringVarP(&ro.OutFilePath, "outfile", "o", "", "File to write signed data. Defaults to stdout")
33+
cmd.Flags().StringVarP(&ro.OutFilePath, "outfile", "o", "", "File to which to write signed data. Defaults to stdout")
3434
cmd.Flags().StringVarP(&ro.StepName, "step", "s", "", "Name of the step being run")
3535
cmd.Flags().StringVarP(&ro.RekorServer, "rekor-server", "r", "", "Rekor server to store attestations")
36-
cmd.Flags().BoolVar(&ro.Tracing, "trace", false, "enable tracing for the command")
36+
cmd.Flags().BoolVar(&ro.Tracing, "trace", false, "Enable tracing for the command")
3737
}

cmd/witness/options/verify.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ func (vo *VerifyOptions) AddFlags(cmd *cobra.Command) {
3131
cmd.Flags().StringSliceVarP(&vo.AttestationFilePaths, "attestations", "a", []string{}, "Attestation files to test against the policy")
3232
cmd.Flags().StringVarP(&vo.PolicyFilePath, "policy", "p", "", "Path to the policy to verify")
3333
cmd.Flags().StringVarP(&vo.ArtifactFilePath, "artifactfile", "f", "", "Path to the artifact to verify")
34-
cmd.Flags().StringVarP(&vo.RekorServer, "rekor-server", "r", "", "Rekor server to fetch attestations from")
34+
cmd.Flags().StringVarP(&vo.RekorServer, "rekor-server", "r", "", "Rekor server from which to fetch attestations")
3535
cmd.Flags().StringSliceVarP(&vo.CAPaths, "policy-ca", "", []string{}, "Paths to CA certificates to use for verifying the policy")
3636
}

docs/attestors/aws-iid.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# AWS Instance Identity Attestor
22

3-
The AWS Instance Identity Attestor communicates with the AWS Instance Metadata to collect
4-
information about the instance Witness is being executed on. The documents signature is
3+
The AWS (Amazon Web Services) Instance Identity Attestor communicates with the AWS Instance Metadata to collect
4+
information about the AWS instance Witness on which executing. The document signature is
55
verified with the AWS RSA public certificate available [here](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/verify-signature.html).
6-
This currently does not work for the Hong Kong, Bahrain, Cape Town, Milan, China, or
6+
This verification method currently does not work for the Hong Kong, Bahrain, Cape Town, Milan, China, or
77
GovCloud regions.
88

99
## Subjects
1010

1111
| Subject | Description |
1212
| ------- | ----------- |
13-
| `instanceid` | The ID of the instance Witness was executed on |
13+
| `instanceid` | The ID of the AWS instance where Witness was executed |
1414
| `accountid` | ID of the account that owns the AWS instance |
15-
| `imageid` | ID of the AMI the instance was running at time of execution |
16-
| `privateip` | IP of the instance at time of execution |
15+
| `imageid` | ID of the AMI ([Amazon Machine Image](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html)) the instance was running at time of execution |
16+
| `privateip` | IP address of the instance at time of execution |

docs/attestors/commandrun.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# Command Attestor
22

3-
The command attestor collects information about a command that witness executes and observes.
4-
The command's arguments, exit code, stdout, and stderr will be collected and added to the attestation.
3+
The Command Attestor collects information about a command that TestifySec Witness executes and observes.
4+
The command arguments, exit code, stdout, and stderr will be collected and added to the attestation.
5+
56
Witness can optionally trace the command which will record all subprocesses started by the parent process
6-
as well as all files opened by all processes. Please note that tracing is currently only supported on
7-
Linux operating systems and is considered experimental for now.
7+
as well as all files opened by all processes. Please note that tracing is currently supported only on
8+
Linux operating systems and is considered experimental.

docs/attestors/environment.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# Environment
1+
# Environment Attestor
22

3-
The environment attestor records the OS, hostname, username, and all environment variables set
4-
of witness at execution time. There is currently no way to block specific environment variables
5-
so please take care to not leak secrets stored in environment variables.
3+
The Environment Attestor records the OS, hostname, username, and all environment variables set
4+
by TestifySec Witness at execution time. Currently there is no means to block specific environment variables
5+
so take care to not leak secrets stored in environment variables.

docs/attestors/gcp-iit.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
# GCP Instance Identity Attestor
22

3-
The GCP Instance Identity Attestor communicates with the GCP metadata server to collect information
4-
about the instance Witness is being exected on. The instance identity JWT's signature is validated
5-
against Google's JWKS to ensure authenticity.
3+
The [Google Cloud Platform](https://console.cloud.google.com/getting-started?supportedpurview=project) (GCP) Instance Identity Attestor communicates with the [GCP metadata server](https://cloud.google.com/appengine/docs/standard/java/accessing-instance-metadata) to collect information
4+
about the instance on which TestifySec Witness is being exected. The instance identity JSON Web Token signature is validated
5+
against Google's JWKS ([JSON Web Key Set](https://auth0.com/docs/secure/tokens/json-web-tokens/json-web-key-sets)) to ensure authenticity.
66

77
## Subjects
88

99
| Subject | Description |
1010
| ------- | ----------- |
11-
| `instanceid` | ID of the Google Compute instance Witness was executed on |
12-
| `instancename` | Name of the Compute instance Witness was executed on |
13-
| `projectid` | The ID of the project that the instance belonged to |
14-
| `projectnumber` | Number of the project that the instance belonged to |
15-
| `clusteruid` | UID of the cluster if the execution enviornment was a GKE clister |
11+
| `instanceid` | ID of the Google Compute instance on which Witness was executed |
12+
| `instancename` | Name of the Compute instance on which Witness was executed |
13+
| `projectid` | The ID of the project to which the instance belonged |
14+
| `projectnumber` | Number of the project to which the instance belonged |
15+
| `clusteruid` | UID of the cluster if the execution environment was a [Google Kubernetes Engine](https://cloud.google.com/kubernetes-engine) (GKE) cluster |

docs/attestors/git.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# Git Attestor
22

3-
The Git attestor records the current state of the objects in the git repository, including untracked objects.
3+
The Git Attestor records the current state of the objects in the git repository, including untracked objects.
44
Both staged and unstaged states are recorded.
55

66

77
## Subjects
88

9-
The attestor returns the SHA1 git commit hash as a subject.
9+
The attestor returns the SHA1 ([Secure Hash Algorithm 1](https://en.wikipedia.org/wiki/SHA-1)) git commit hash as a subject.

docs/attestors/gitlab.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
# Gitlab Attestor
1+
# GitLab Attestor
22

3-
The Gitlab attestor records information about the Gitlab CI/CD job execution that
4-
Witness was run in. Witness verifies the JWT provided in `CI_JOB_JWT` against the
5-
instance's JWKS to ensure authenticity at execution time.
3+
The [GitLab](https://about.gitlab.com/) Attestor records information about the GitLab CI/CD job execution in which
4+
TestifySec Witness was run. Witness verifies the JWT ([JSON Web Token](https://en.wikipedia.org/wiki/JSON_Web_Token)) provided in `CI_JOB_JWT` against the
5+
instance's JWKS ([JSON Web Key Set](https://auth0.com/docs/secure/tokens/json-web-tokens/json-web-key-sets)) to ensure authenticity at execution time.
66

77
## Subjects
88

99
| Subject | Description |
1010
| ------- | ----------- |
11-
| `pipelineurl` | Url of the CI/CD pipeline that this job belonged to |
12-
| `joburl` | Url of the CI/CD job that this attestor describes |
13-
| `projecturl` | Url of the project that owns the CI/CD pipeline and job |
11+
| `pipelineurl` | URL of the CI/CD pipeline to which this job belonged |
12+
| `joburl` | URL of the CI/CD job that this attestor describes |
13+
| `projecturl` | URL of the project that owns the CI/CD pipeline and job |

docs/attestors/jwt.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# JWT Attestor
22

3-
The JWT attestor verifies a JWT against a JWKS and records information about the
3+
The JWT ([JSON Web Token](https://en.wikipedia.org/wiki/JSON_Web_Token)) Attestor verifies a JWT against a JWKS ([JSON Web Key Set](https://auth0.com/docs/secure/tokens/json-web-tokens/json-web-key-sets)) and records information about the
44
claims of the JWT. The JWK that was used to verify the JWT is also recorded.

0 commit comments

Comments
 (0)