Sigstore KMS plugin for OVHcloud KMS.
To permit sigstore to use the plugin, the binary must be in your system's PATH.
curl -fsSL https://raw.githubusercontent.com/ovh/sigstore-kms-ovhcloud/main/install.sh | shThe binary is installed in $HOME/.local/bin by default (created if it does not exist).
Make sure this directory is in your PATH.
Install a specific version:
curl -fsSL https://raw.githubusercontent.com/ovh/sigstore-kms-ovhcloud/main/install.sh | sh -s <version>Custom installation directory:
curl -fsSL https://raw.githubusercontent.com/ovh/sigstore-kms-ovhcloud/main/install.sh | sh -s -- -b <path>- Download latest release
- Untar / unzip the archive
- Add the containing folder to your
PATHenvironment variable, or move the binary into a directory that is already in yourPATH
Requires Go to be installed on your system.
Using go install:
go install github.com/ovh/sigstore-kms-ovhcloud/cmd/sigstore-kms-ovhcloud@latestUsing make:
git clone https://github.com/ovh/sigstore-kms-ovhcloud.git
cd sigstore-kms-ovhcloud
make install # installs to /usr/local/bin by default
# or:
make install PREFIX=$HOME/.local # installs to $HOME/.local/binOVH provider supports both mTLS and token authentication.
Default settings can be set using a configuration file named okms.yaml and located in the ${HOME}/.ovh-kms
directory.
If you don't wish to use this default file, you can create your own and specify the full path in the KMS_CONFIG
environment variable.
Example of okms.yaml:
version: 1
profile: default # Name of the active profile
profiles:
default:
restapi:
endpoint: <kms-endpoint> # for example: "https://eu-west-rbx.okms.ovh.net"
ca: /path/to/public-ca.crt # Optional if the CA is in system store
auth:
cert: /path/to/domain/cert.pem
key: /path/to/domain/key.pemThese settings can be overwritten using environment variables:
KMS_RESTAPI_ENDPOINTKMS_RESTAPI_CAKMS_RESTAPI_CERTKMS_RESTAPI_KEY
Example of okms.yaml:
version: 1
profile: default # Name of the active profile
profiles:
default:
restapi:
endpoint: <kms-endpoint> # for example: "https://eu-west-rbx.okms.ovh.net"
ca: /path/to/public-ca.crt # Optional if the CA is in system store
auth:
type: token
token: <token>
okmsId: <okms-id> # for example: "734b9b45-8b1a-469c-b140-b10bd6540017"These settings can be overwritten using environment variables:
KMS_RESTAPI_ENDPOINTKMS_RESTAPI_CAKMS_RESTAPI_TYPEKMS_RESTAPI_OKMSIDKMS_RESTAPI_TOKEN
The plugin uses the ovhcloud:// URI scheme followed by the specific key UUID you want to use for cryptographic
operations.
URI format : ovhcloud://<key_uuid>
cosign generate-key-pair --kms ovhcloud://<key_name>cosign public-key --key ovhcloud://<key_id>cosign sign --key ovhcloud://<key_id> <my_image>@<image_digest>cosign verify --key ovhcloud://<key_id> <my_image>@<image_digest>