Giter VIP home page Giter VIP logo

docs's Introduction

Sigstore Docs

This repo contains the Sigstore documentation, which is hosted at docs.sigstore.dev.

If you are looking for the frontend development of the Sigstore website, please visit the sigstore-website repo.

Contributing

We welcome contributions on the docs site!

Pull Request Process

  1. Please first discuss the change you wish to make via an issue.
  2. Fork the docs repository to your own GitHub account and clone it locally.
  3. Hack on your changes.
  4. Write a meaningful commit message (and sign your commit). Review the commit message guidelines.
  5. Ensure that CI passes, if it fails, fix the failures. If you are making many commits into one PR, please squash your commits.
  6. Every pull request requires a review from the core sigstore-website team before merging.

Setup

First, install Hugo following the instructions for your platform.

Clone this repository and navigate to its directory.

Install dependencies:

npm install

Development Server

You can run the development server with:

npm run start

If needed, you can also build the site locally:

npm run build

Site Information

This site is built using the Hugo static site generator and the Doks theme.

Modifications have been made to the theme templates to change the landing page from the Doks default, to make section bundles more useful to visitors, and to give an option to display simplified titles in the sidebar.

Full text search is provided by FlexSearch.

Common Tasks

To change the order of pages on the site, edit the weight variable in the front matter of individual pages. A smaller number means the page will appear first in the sidebar and in section bundles.

To change the order of sections of content, refer to the weight variable in the _index.html file within the folder for that section. These _index.html files also enable you to change the names of sections.

Both a title and menuTitle variable can be set in front matter. If a menuTitle variable is set, that text will be used in the left sidebar and on section bundles. If only a title is set, that text will be used for both the on-page title and in menus. The menuTitle variable should be used to shorten long page titles.

The Doks theme provides additional functionality for linting and checking scripts that may be useful:

Doks Commands

docs's People

Contributors

cburkhardt27 avatar chrisjburns avatar cmurphy avatar datosh avatar dennyhoang avatar dependabot[bot] avatar developer-guy avatar devmoran avatar dlorenc avatar dmitris avatar elfotografo007 avatar endorama avatar erikaheidi avatar haydentherapper avatar hectorj2f avatar hrittikhere avatar imjasonh avatar jonvnadelberg avatar lkatalin avatar ltagliaferri avatar lukehinds avatar mdunbavan avatar normal-coder avatar priyawadhwa avatar queen-codes avatar smythp avatar stevenif avatar vaikas avatar wlynch avatar znewman01 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

docs's Issues

Improve documentation regarding key types

Description

I wanted to use Google KMS instead of generating keys using cosign, and for testing purposes I just used an old key of type 4096 bit RSA key PSS Padding - SHA256 Digest. This returned the following error: main.go:74: error during command execution: signing [[IMAGE@sha256:DIGEST](http://IMAGE@DIGEST)]: signing digest: [POST /api/v1/log/entries][400] createLogEntryBadRequest &{Code:400 Message:error processing entry: verifying signature: crypto/rsa: verification error}. I used the Elliptic Curve P-256 keySHA256 Digest type in Google KMS instead, which worked fine.

I think documentation regarding which kind of keys are allowed for signing should be improved, because this was not entirely obvious. I could only find cosign differs in that it signs with ECDSA-P256 keys instead of PGP, and stores signatures in the registry. in the FAQ, which is why I tried that type of key, but looking in the FAQ was not my first choice.

verify-release.md doc should be update

Description

It seems that the signing/verification method of your artifacts was changed and the instructions document is not aligned with it.

In the past v0.3.0 and earlier, you used to publish a certificate file alongside the main artifact and its signature file (like the example in the doc rekor-cli-linux-amd64_cert.pem).
Since then, the signing methods changed, and the artifacts are now published with another file with the suffix -keyless.pem or -keyless.sig.

It's not clear how the artifact should now be verified.

Links to the document
verify-release.md
Website

Update Sigstore docs

Description

Read through sigstore docs with SME and implement changes requested.

rewrite cosign quick start guide

The current quick start guide contains some information that needs updating. Doc should be rewritten so it is more relevant to user's needs.

Add code samples for the rekor client

Description

Copied (in part) from #94 in sigstore/sigstore-website

We could add some code samples (or links to other repos that contain them) for the rekor client

Docs on using CUE and Rego to craft policies in policy-controller

There are a couple of policy examples in the policy-controller docs that use cue policies, but I can't find any documentation that specifically address CUE and Rego support and how it works.

  • Here's how to craft a CUE policy, here is the spec/language reference
  • Here's how Rego policies work, here is the reference on how they need to be written (including custom error messages)

Document revocation playbook for Fulcio/Rekor keys

What happens if a Fulcio/Rekor key is compromised? We have a proposed plan, but it's not documented on the web site.

There are two reasons we might want to do this:

  1. Helping folks deploy private instances. This can be seen as an extension to the Cosign with Custom Components page, and possibly warrants its own issue/effort.
  2. Transparency, and generally inspiring confidence in our security protocols.

A very first attempt at this might just say:

Because we distribute the key material for Sigstore services (Rekor and Fulcio) via The Update Framework(TUF), revocation is very easy. We currently keep all rotated Rekor/Fulcio keys in the repository (per the Log Verification with Expired Targets proposal; you may need to join [email protected] for access). Then, to revoke a key, we just need to remove it from the TUF repository! Sigstore clients will stop trusting it immediately.

The document Revocation of untrusted TUF targets; you may need to join [email protected] for access) proposes adding a revocation list so that Sigstore clients can recognize when a key is revoked and report this to end users accordingly to make it easier to understand what's going on, but the above revocation plan is sufficient for security.

bug: overflow of text-container in `gitsign/usage`

Description

The markdown contents inside the Detailed Gitsign Usage page is overflowing outside of the container.

Screenshots 👇🏼

image

Inspectable at gitsign/usage


Additionally, I've tested it locally on both big screens and mobile devices, checks out that the issue is reproducible & valid for both. ⬇️

Big-Screen 🖥️ Small-Screen 📱
big-screen-local small-screen-local

with the only exception being medium screen devices (iPad, Tablets etc.) 👇🏼

bug2

  • I am currently working on this but it's open to collaborators & as always, suggestions & feedback are always welcome! I'll keep posting updates & create a PR once resolved.
    cc: @ltagliaferri, @cpanato



OS : Ubuntu (22.04 LTS, x64)   /   Windows 10 Pro (x64)
Browser : Google Chrome — Version 111.0.5563.147 (Official Build) (64-bit)

Sigstore on AWS documentation

Description

We support some integrations with cloud providers, but they aren't really listed anywhere. Things like KMS, CA APIs, and keyless/oidc support bridge across individual tools (fulcio/cosign), so there's no great spot today.

Bundle under a "Sigstore on cloud providers" section.

Build system integrations would be good too!

Reposition toggle-button for Dark Mode in Docs

Description

Most users nowadays prefer surfing docs with Dark-Mode enabled. But, in the current design, the user has to first scroll down to the bottom & then can access the toggle button to switch between themes, which I believe is a bad UX.

image

Solution

I propose a solution where we can shift the button to the sticky navbar which will remain fixed even if we scroll down, so that the user can switch between themes anytime they want. Plus, we can also shift the "Built with Nuxt" promo to the sidebar to make to reduce unnecessary space wastage on the viewport.

image


Final look 👇🏼

image

P.S. : If this issue is validated & approved, I'd love to contribute. Additionally, I do have a similar design in mind, following the same approach for responsive mode (i.e. mobile view).

Add Node Version to README

Currently, when you clone this repository as a fresh project and run a yarn dev (after the yarn install), you get the Error: error:0308010C:digital envelope routines::unsupported error if you are running Node v17. We should probably add a little note in the README detailing that Node v16 is required. Saves troubleshooting time of new contributors?

Spelling mistake in gitsign global config example

Description

Documentation has a small spelling mistake here. I'm making this issue to link the PR I'm logging now.

Resolution

Resolution is simple, it's just updating the word that is mistyped from gGtsign to Gitsign.

I realise that according to the comment on the PR template I am supposed to allow time to discuss, but given the nature of this (being a simple spelling mistake), I am going to submit the PR straight away.

bug: using search freezes the page

Description

I recently encountered a critical bug in the sigstore docs that causes the website to break or freeze. This issue specifically affects the search functionality, which is a crucial tool for navigating the docs. Upon attempting to perform a search for the second time using the search bar, the entire docs page becomes unresponsive and no further actions can be taken.

To reproduce follow these steps:

  1. Visit https://docs.sigstore.dev
  2. Search for any keyword, say — "Custom Components" (from Configuring Cosign with Custom Components) [present in Cosign section]
  3. It should return a list of suggestions (not sorted, but it's okay)
  4. Select the option & it should be fine till now.
  5. Go back to the home of docs page (in the same tab) i.e. https://docs.sigstore.dev (either by editing the current URL or simply by clicking the Sigstore logo on the top right)
  6. NOW, Search something (perform a keyword search just like the previous time)
  7. Say, search for this — "Other Types" (from Signing and Uploading Other Types) [present in the Rekor section]
  8. Now notice, it isn't returning anything and simply suggesting a few topics from Cosign (whereas it should suggest from the Rekor section)

Now the main part, you'll clearly notice, when you have typed around 3-5 characters in the search bar, it returns a TypeError 'key' read error, which essentially freezes the inner bundle code.

BOOM! 💥 The page freezes, & everything becomes constant, nothing works, not even clicking!


SearchBug-Sigstore

cc: @ltagliaferri, @cpanato  

⚠️ Note that the search function is not case-sensitive & the only way it can be fixed is by simply performing a fresh reload of the page.


OS : Ubuntu (22.04 LTS, x64)   /   Windows 10 Pro (x64)
Browser : Google Chrome — Version 111.0.5563.147 (Official Build) (64-bit)

Fix Sigstore/docs build instructions

Description

Current build instructions result in an error and build fails. Also make some text changes in docs as requested by eng.

Version

Node.js version 19.8.1 fails in yarn

Rekor operator is not real installation method

Description

Rekor installation docs claim that:

There are a few ways you can deploy a Rekor Server:

  1. We have a docker-compose file available
  2. A kubernetes operator
  3. Alternatively, you can build a Rekor server yourself.

I believe this is misleading as the operator does nothing and can't be used to install Rekor. There for I recommend removing point number 2 from the list mentioned above.

Version

main

Version selector

Description

Copied from #152 in sigstore/sigstore-website

Currently, the docs shown on the sigstore.dev website are of the latest iteration of the docs only.
It would be nice and probably correct to have a version selector if users are using an older version.

Original request: DennyHoang

Document secure use of Rekor pub key(s)

It would be great to have a quick and easy guide on this topic, including:

  • Use of the API vs. TUF
  • Locations of keys and certs
  • Keys per shard/log in Rekor
  • Commands to use to very the pubkey(s) (openssl, etc.)
  • Verifying pubkey back up to the TUF community trust root (linking to article about how that root works wrt Sigstore/Rekor)

From @haydentherapper : "We should document that for the public deployment, the API should not be used to verify entries, that the keys should come from TUF. For private deployments, TUF is recommended but if you do choose to use the API, you should at least do trust-on-first-use." Slack convo ref

Guide for air-gapped deployments

We get a lot of questions about air-gapped deployments for Cosign, policy-controller, etc. There are a fair number of important considerations: getting TUF roots across, etc.

Worth writing up once and for all.

CC @clemenko @vaikias

Sigstore on Azure documentation

Description

We support some integrations with cloud providers, but they aren't really listed anywhere. Things like KMS, CA APIs, and keyless/oidc support bridge across individual tools (fulcio/cosign), so there's no great spot today.

Bundle under a "Sigstore on cloud providers" section.

Build system integrations would be good too!

Document/blog post on how Rekor uses TUF root for non-TUF experts

Including:

  • Chaining of roots
  • How to check which community keys are "current" on the root
  • Summaries of videos/key ceremonies
  • How the rotation works for Rekor/Sigstore specifically so that you know when to trust it without having to know all about TUF

Edit: how/whether cosign and rekor handle TUF key rotations the same way or differently. How to set this up on private instance of Rekor.

Slack convo ref

changes to the overview pages of each sigstore tool

Description

I found a similar paragraph used in most of the overview pages of various sigstore tools. The paragraph is a call to action for users to join the slack community of each tool. The paragraph can be rewritten in some instances, but for the 'Getting Started' section on the cosign overview page, I think it should be removed as the purpose of a getting started section is to provide clear instructions on how to install and use cosign which I believe is already covered in the installation page of cosign.

Also, I noticed that the overview page isn't giving an overview into cosign in comparison to other overview pages of each sigstore tool that gives a somewhat description of the tool.

Proposed Changes;

  1. Rewrite the similar paragraph across all overview pages.
  2. Remove the 'getting started section' on the overview page of the cosign tool
  3. Rewrite the overview page of the cosign tool to be consistent with the overview pages of other tools, by actually giving an insight into cosign.

Attached below, is a screenshot of the recurring paragraph;
Screenshot 2023-04-04 at 07 20 51

Jumbled sentence in How Sigstore Works

Description

Here I found one sentence which is jumbled and not creating any sense

Current behaviour

This checks you are who you say you are using OpenID Connect

if we update with this might be meaningful

This checks who you are using OpenID Connect

Dec-12-22-01

Sigstore on GCP documentation

Description

We support some integrations with cloud providers, but they aren't really listed anywhere. Things like KMS, CA APIs, and keyless/oidc support bridge across individual tools (fulcio/cosign), so there's no great spot today.

Bundle under a "Sigstore on cloud providers" section.

Build system integrations would be good too!

document minimum viable Go code block to use cosign as a Go module from another project

Description

Copied from #84 in sigstore/sigstore-website

We all know to cosign is excellent. So IMHO, we should support documentation about how people who might want o use it in their tooling can use cosign as a Go module which can help us increase tooling around cosign. Again IMHO, we should provide two samples, one for how to use cosign with public/private key pairs, latter is Keyless mode.

Original request: @developer-guy

Caching issue

There is an issue where users are reporting landing on older versions of the docs site and need to hard reset multiple times. I have cleared and re-deployed the Netlify cache but this did not address the issue.

Fix Go Module path of sget

Description

Version

https://docs.sigstore.dev/cosign/working_with_blobs#sget

github.com/sigstore/cosign/cmd/sget was deprecated, so sget outputs the following notice.

$ go install github.com/sigstore/cosign/cmd/sget@latest
$ sget --help
main.go:43:
-------- NOTICE --------
The sget tool in the cosign repo is deprecated, and will be removed in a future release.

If you're interested in fetching content from an OCI registry or from an arbitrary URLs, please see: https://github.com/sigstore/sget.
------------------------
sget is DEPRECATED in the cosign repo -- see https://github.com/sigstore/sget for the new tool.

The correct Module path is github.com/sigstore/sget@latest.

$ go install github.com/sigstore/sget@latest

Docs shows an outdated view

Side bar view of docs.sigstore.dev in browser:

image

View in incognito:

image

If I were to guess, page caching is too long-lived. Is this something that is controllable?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.