A JSON Web Key (JWK) is a JavaScript Object Notation (JSON) datastructure that represents a cryptographic key, these public keys can be used to make integrations of services such as Auth and OIDC authentication.
Generating this public key can be a manual process with some bash commands, but creating the public key directly with terraform will help prevent using bash commands and then passing the call as an input to terraform.
Supported resource:
jwk_document
OS X & Linux:
make build install
this public_key can be generated using terraform-tls
provider or manually using the file()
function
terraform {
required_providers {
jwk = {
version = "0.1.0"
source = "github.com/braybaut/jwk"
}
tls = {
source = "hashicorp/tls"
version = "3.1.0"
}
}
}
provider "tls" {
# Configuration options
}
provider "jwk" {}
resource "tls_private_key" "example" {
algorithm = "RSA"
rsa_bits = 2048
}
resource "jwk_document" "new_jwk" {
public_key_pem = tls_private_key.example.public_key_pem
}
output "jwk_document" {
value = jwk_document.new_jwk.jwk_document
}
make install
How to run tests against this repository, and optionally generate a coverage report.
ginkgo -v -r -compilers 0 -cover -covermode count -coverprofile ./coverage.out
- Fork it (https://github.com/yourname/yourproject/fork)
- Create your feature branch (
git checkout -b foobar_stuff
) - Commit your changes (
git commit -am 'feat: add some foobar'
) - Push to the branch (
git push origin foobar_stuff
) - Create a new upstream pull request (
hub pull-request -b braybaut/terraform-provider-jwk:main
)
Made with ❤ By Braybaut