Skip to content

Commit 0edee76

Browse files
committed
docs: reworking provenance documentation after feedback
1 parent 2a5ee2e commit 0edee76

File tree

12 files changed

+50
-23
lines changed

12 files changed

+50
-23
lines changed

PROVENANCE.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
2+
3+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages.
4+
5+
As part of [SLSA requirements for level 3 compliance](https://slsa.dev/spec/v1.0/requirements), LaunchDarkly publishes provenance attestations about our SDK package builds to npm for distribution alongside our packages.
6+
7+
For npm packages that are published with provenance, npm automatically [validates the authenticity of the package using Sigstore](https://docs.npmjs.com/generating-provenance-statements#about-npm-provenance).

packages/sdk/akamai-base/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@ yarn && yarn build && cd packages/sdk/akamai-base
3030
yarn test
3131
```
3232

33+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
34+
35+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
36+
3337
## About LaunchDarkly
3438

3539
- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:

packages/sdk/akamai-edgekv/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@ yarn && yarn build && cd packages/sdk/akamai-edgekv
3030
yarn test
3131
```
3232

33+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
34+
35+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
36+
3337
## About LaunchDarkly
3438

3539
- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:

packages/sdk/cloudflare/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,10 @@ yarn && yarn build && cd packages/sdk/cloudflare
5959
yarn test
6060
```
6161

62+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
63+
64+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
65+
6266
## About LaunchDarkly
6367

6468
- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:

packages/sdk/react-native/README.md

Lines changed: 3 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -98,29 +98,9 @@ echo "MOBILE_KEY=mob-abc" >> packages/sdk/react-native/example/.env
9898
yarn && yarn ios-go
9999
```
100100

101-
## Validating SDK packages with the SLSA framework
102-
103-
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity of our published SDK packages. As part of [SLSA requirements for level 3 compliance](https://slsa.dev/spec/v1.0/requirements), LaunchDarkly publishes provenance about our SDK package builds to NPM for distribution alongside our packages.
104-
105-
The SLSA framework specifies some [recommendations for verifying build artifacts](https://slsa.dev/spec/v1.0/verifying-artifacts) in their documentation. For npm packages that are published with provenance, npm already [validates the authenticity of the package using Sigstore](https://docs.npmjs.com/generating-provenance-statements#about-npm-provenance). In addition to npm's validation, we recommend the following steps:
106-
- Ensure that the @launchdarkly/react-native-client-sdk version you're downloading was published with npm-verified provenance
107-
- Check the [versions tab in npm](https://www.npmjs.com/package/@launchdarkly/react-native-client-sdk?activeTab) and ensure the version you're installing has a green checkmark
108-
- Use the provenance published in npm to verify the authenticity of the build:
109-
- Check the source commit for:
110-
- Source repository is a LaunchDarkly-owned repository
111-
- Commit author is a LaunchDarkly entity
112-
- (Optional) Code changes in the commit are trustworthy
113-
- Check the build file and build summary for:
114-
- Build is triggered by a LaunchDarkly-owned repository
115-
- Build is executed by a LaunchDarkly-owned Github Actions workflow
116-
- Build steps are trustworthy
117-
- Check the public ledger's transparency log entry to ensure the build provenance is authentic:
118-
- Signature issuer is Sigstore
119-
- OIDC issuer is `https://token.actions.githubusercontent.com`
120-
- GitHub Workflow Repository is a LaunchDarkly-owned repository
121-
- GitHub Workflow SHA matches the SHA of the source commit
122-
123-
The recommendations above may be adjusted to fit your organization's needs and supply chain security policies. For additional questions, please contact [[email protected]](mailto:[email protected]).
101+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
102+
103+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
124104

125105
## About LaunchDarkly
126106

packages/sdk/server-node/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ We run integration tests for all our SDKs using a centralized test harness. This
3636

3737
We encourage pull requests and other contributions from the community. Check out our [contributing guidelines](CONTRIBUTING.md) for instructions on how to contribute to this SDK.
3838

39+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
40+
41+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
42+
3943
## About LaunchDarkly
4044

4145
- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:

packages/sdk/vercel/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,10 @@ yarn && yarn build && cd packages/sdk/vercel
6666
yarn test
6767
```
6868
69+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
70+
71+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
72+
6973
## About LaunchDarkly
7074

7175
- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:

packages/shared/common/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ This library is a beta version and should not be considered ready for production
1212

1313
See [Contributing](../CONTRIBUTING.md).
1414

15+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
16+
17+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
18+
1519
## About LaunchDarkly
1620

1721
- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:

packages/shared/sdk-server-edge/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ This library is a beta version and should not be considered ready for production
1212

1313
See [Contributing](../CONTRIBUTING.md).
1414

15+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
16+
17+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
18+
1519
## About LaunchDarkly
1620

1721
- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:

packages/shared/sdk-server/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ This project contains Typescript classes and interfaces that are applicable to s
1010

1111
See [Contributing](../CONTRIBUTING.md).
1212

13+
## Validating SDK packages with the SLSA framework (Supply-chain Levels for Software Artifacts)
14+
15+
LaunchDarkly uses the [SLSA framework](https://slsa.dev/spec/v1.0/about) to help developers make their supply chain more secure by ensuring the authenticity and build integrity of our published SDK packages. To learn more, see the [provenance guide](PROVENANCE.md).
16+
1317
## About LaunchDarkly
1418

1519
- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:

0 commit comments

Comments
 (0)