NOTE: Please look to the technical section of the smallstep blog for all release notes for step cli and certificates.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Ability to output inspected CSR in PEM format (smallstep#1153)
- Allow 'certificate inspect' to parse PEM files containig extraneous data (smallstep#1153)
- Sending of (an automatically generated) request identifier in the X-Request-Id header (smallstep#1120)
- Upgrade certinfo (smallstep#1129)
- Upgrade other dependencies
- OIDC flows failing using Chrome and other Chromium based browsers (smallstep#1136)
- Upgrade to using cosign v2 for signing artifacts
- Add support for Nebula certificates using ECDSA P-256 (smallstep#1085)
- Upgrade docker image using Debian to Bookworm (smallstep#1080)
- Upgrade dependencies, including go-jose to v3 (smallstep#1086)
- Add
step crypto randcommand in (smallstep#1054) - Support for custom TPM device name in
--attestation-uriflag in (smallstep#1044)
- Ignore BOM when reading files in (smallstep#1045)
- Upgraded
truststoreto fix installing certificates on certain Linux systems in (smallstep#1053)
- Scoop and WinGet releases
- Command completion for
zshin (smallstep#1055)
- Add support for provisioner claim
disableSmallstepExtensions(smallstep#986) - Add support for PowerShell plugins on Windows (smallstep#992)
- Create API token using team slug (smallstep#980)
- Detect OIDC tokens issued by Kubernetes (smallstep#953)
- Add support for Smallstep Managed Endpoint X509 extension (smallstep#989)
- Support signing a certificate for a private key that can only be used for
encryption with the
--skip-csr-signatureflag instep certificate create. Some KMSs restrict key usage to a single type of cryptographic operation. This blocks RSA decryption keys from being used to sign a CSR for their public key. Using the--skip-csr-signatureflag, the public key is used directly with a certificate template, removing the need for the CSR signature. - Add all AWS identity document certificates (smallstep/certificates#1510)
- Add SCEP decrypter configuration flags (smallstep#950)
- Add detection of OIDC tokens issued by Kubernetes (smallstep#953)
- Add unversioned release artifacts to build (smallstep#965)
- Increase PBKDF2 iterations to 600k (smallstep#949)
--kmsflag is no longer used for the CA (signing) key forstep certificate create. It was replaced by the--ca-kmsflag (smallstep#942).- Hide
step oauth commandon failure (smallstep#993)
- Look for Windows plugins with executable extensions (smallstep/certificates#976)
- Fix empty ca.json with invalid template data (smallstep/certificates#1501)
- Fix interactive prompt on docker builds (smallstep#963)
step certificate fingerprintcorrectly parse PEM files with non-PEM header (smallstep/crypto#311)step certificate formatcorrectly parse PEM files with non-PEM header (smallstep#1006)- Fix TOFU flag in
ca provisioner update(smallstep#941) - Make
--teamincompatible with--fingerprintand--ca-urlin `step ca bootstrap (smallstep#1017)
- Remove automatic creation of the step path (smallstep/certificates#991)
- Documentation for fish completion (smallstep#930)
--audienceflag tostep api token(smallstep#927)
- Depend on smallstep/go-attestation instead of google/go-attestation
- Implementation for parsing CRLs (smallstep#926)
- Storing of certificate chain for TPM keys in TPM storage (smallstep#915)
- The enrolment URL path used when enrolling with an attestation CA (smallstep#915)
- Issue with CLI reference not showing curly braces correctly (smallstep#916)
- Word wrapping for
step api tokenexample (smallstep#917)
- Cross-compile Debian docker builds to improve release performance (smallstep#911).
- Fix encrypted PKCS#8 keys used on
step crypto key format(smallstep/crypto#216).
- Upgrade certificates version (smallstep#910).
- Support for ACME device-attest-01 challenge with TPM 2.0 (smallstep#712).
- Build and release cleanups (smallstep#883, smallstep#884, smallstep#888, and smallstep#896).
- Release of the smallstep/step-cli:bullseye docker image with CGO and glibc support (smallstep#885).
- Support for reload using the HUP signal on the test command
step fileserver(smallstep#891). - Support for Azure sovereign clouds (smallstep#872).
- Fix the
--insecureflag when creating RSA keys of less than 2048 bits (smallstep#878). - Fix docs for active revocation (smallstep#889)
- Fix signing of X5C tokens with ECDSA P-384 and P-521 keys.
- Fix 404 links in docs (smallstep#907).
- Linting and cleanup changes (smallstep#904 and smallstep#905).
- Use key fingerprints by default for SSH certificates, and add
--certificateflag to print the certificate fingerprint (smallstep#908).
- Remove
--hugoflag instep helpcommand (smallstep#898).
- Support on
step ca tokenfor signing JWK, X5C and SSHPOP tokens using a KMS (smallstep#871). - debian:bullseye base image (smallstep#861)
step certificate needs-renewalwill only check the leaf certificate by default. To test the full certificate bundle use the--bundleflag. (smallstep#873)- Change how
step help --markdownworks: It now ouputs "REAME.mdx" instead of "index.md"
- Prevent re-use of TCP connections between requests on
step oauth(smallstep#858). - Upgrade certinfo with a fix for the YubiKey touch policy information (smallstep#854).
- Upgrade Golang dependencies with reported issues.
- Added support for extended SANs when creating CSRs (smallstep/crypto#168).
- Added check for empty DNS value in
step ca init(smallstep#815).
- Improved prompts and error messages in
step ca init(smallstep#827), (smallstep#831), (smallstep#839). - Improved ACME device-attest-01 challenge validation logic (smallstep#837).
- Fixed
step ca provisioner addwhen CA is not online (smallstep#833).
- Add scope parameter in
step oauth(smallstep#816).
- Check for remote configuration API before prompting for admin credentials (smallstep/cli809).
- Generation of OTT when signing a CSR with URIs (smallstep#799).
- CA certificates path for SLSE with smallstep/truststore/#16 (smallstep#818).
- Added support for configuring ACME device-attest-01 challenges.
- Added support to disable ACME challenges and attestation formats.
- Added support for ACME device-attest-01 challenges with YubiKeys.
- Added support for SUSE13 and upwards for
step certificate install. - Added support for printing Sigstore certificate
details to
step certificate inspect - Added the
--acmeflag to thestep ca initcommand to create a default ACME provisioner when initializing a CA. - Added
--remote-managementflag to thestep ca initcommand, which enables Remote Management of the CA using the Admin API. - Added
x5ctokens using certificates and keys in a KMS. - Added Window's CryptoAPI support on
step-kms-plugin. - Added
--admin-password-fileflag on admin flows. - Added support for GitHub OAuth flows.
- New OAuth success page with color.
- Added
x5c-rootsas alias forx5c-rootflag.
- Removed support for Google OOB.
- Initial support for
stepplugins. A plugin is an executable file named with the format step-name-plugin, located in the$PATHor the$STEPPATH/pluginsdirectory. These plugins will be executed usingstep name. - Integration of
step-kms-pluginonstep certificate createandstep certificate sign. - Add the certificate signature to
step ssh inspectoutput. - Add the
--mtls=falseflag to force the token authorization flow onstep ca renew. - Add the
--setand--set-fileflag tostep certificate createandstep certificate signcommands.
- Support two latest versions of Go (1.18, 1.19)
step ca revoke <serial>requires either a base 10 serial number or a value with a prefix indicating the appropriate base.
- Device Authorization Grant flow for input constrained devices needing OAuth
credentials.
--console-flowflag instep oauthfor selecting which alternative OAuth flow to use.
- Added back --domain and --remove-domain flags to provisioner CRUD.
- The
betaprefix for remote provisioner and admin management.
- Add commands for managing certificate issuance policies on authority, provisioner and ACME account level.
- Admin API enabled functionality for
step beta ca provisionerandstep beta ca admin.
- step beta ca provisioner [add|remove|update] -> functionality moved to step ca provisioner [add|remove|update]
- step beta ca admin [add|remove|update] -> functionality moved to step ca admin [add|remove|update]
- Add flags to include subscription and object ids in the Azure provisioner.
- Add support for certificate renewals after expiry using the
--allow-renewal-after-expiryflag. - Add
--x5c-insecureflag. - Add support for Azure
Managed Identitytokens. - Add
smtpsandldapsas additional protocols supported by thecertificate inspectcommand. - Add
--sha1flag to getcertificate fingerprintusing SHA-1 instead of the default SHA-256 algorithm.
- Support two latest versions of Go (1.17, 1.18).
- Go 1.16 support.
- Fix flags to add or remove options in AWS, Azure, and GCP provisioners.
- Fix admin credentials on RAs.
- Add Solus OS support to truststore when used in
step ca bootstrap --install. - Add
step completioncommand to print the shell completion script.
- IPv6 addresses are normalized as IP addresses internally.
- When the
--contextflag is provided when initializing a CA, configuration and other files will be stored in a directory named after the value provided instead of being named after the first DNS name.
- IP SAN support when using
step ca signand an ACME provisioner (see 819). - Offline mode no longer requires
--ca-urlto be set. - Add missing
TemplateDatawhen signing x509 certificates in offline mode. - Improved
needs-renewalexample help texts. - Improved
step crl inspectreason output.
- Add additional
emojiandbase64-rawencoding to the--formatflag ofstep certificate fingerprint. - Add
--formatflag tostep crypto key fingerprint. - Add
--formatflag tostep ssh fingerprint. - Add FreeBSD support to
step certificate install. - Add
step crl inspectto inspect a certificate revocation list (CRL). - Add
--auth-paramflag tostep oauthfor adding args to query. - Add
--no-agentflag tostep ssh certificateto skip ssh-add. - Add IP SANs support to
step ca certificatewhen using an ACME provisioner. - Add support for adding and updating Nebula provisioners.
- Allow
step ssh loginandstep ssh logoutwithout positional arguments. - Additional configuration options for SCEP provisioners.
- Ability to use multiple certificate authority contexts without the need to change $STEPPATH.
- Support for go 1.15
- gocritic linter
- Allow to initialize step-ca config with Azure Key Vault using
step ca init --kms azurekms.
- gocritic warnings
- Allow override of the listen address on OIDC flows when there is an existing value in provisioner configuration.
- Add a way to set the redirect_uri in an OIDC flow. Allowing to get a certificate from containers or environments where it is hard to send traffic to 127.0.0.1 and where the IDP does not support the urn:ietf:wg:oauth:2.0:oob flow.
- Bug in step ssh certificate --offline where password-file flag was always set to the value of provisioner-password-file flag.
- exit code '2' for file not exists scenarios in 'needs-renewal' commands
- go 1.17 to github action test matrix
- non interactive provisioner password file flag in
step ca token --offline
- Using go 1.17 to build
- Have
--dnsbehave as string slice flag instep ca init - The way CSR is created on
step ca certificatewith OIDC to better support of admins
- Fix
make bootstrapfailing to get GOPATH and installgolangci-lint. - ipv6 address error in multi-DNS csv
step ca init
- Use cosign to sign and upload signatures for multi-arch Docker container.
- Debian checksum
- Sign over goreleaser github artifacts using cosign
--bundleflag to cert/inspect for inspecting all the full chain or bundle given a path. Default behavior is unchanged; only inspect the first (leaf) certificate.- distribution.md with documentation on how to create releases.
- travis build and upload artifacts to GitHub Releases on tagged pushes.
- logging of invalid http requests to the oauth server
- default PEM format encryption alg AES128 -> AES256
- Initial version of
step