Urko ee967277d4 | ||
---|---|---|
pkg/credentials | ||
.gitignore | ||
LICENSE | ||
Makefile | ||
README.md | ||
go.mod | ||
go.sum |
README.md
go-grpc-certificate
Problem's context
I've got some trouble while I want to use gRPC through TLS certificates. I've created a certificated from a .pem key file which had
a password and I couldn't use it through go
standard library. I found a solution based on this SO answer to this question
Solution
I've decided to use openssl to achieve this task as far as I was not able to found a solution in go standard library.
Installation requirements
I've used this version on development. So we should check if it backwards compatible.
$ openssl version
OpenSSL 3.0.8 7 Feb 2023 (Library: OpenSSL 3.0.8 7 Feb 2023)
How to use
In your go
project you just have to type in your terminal:
$ go get gitea.urkob.com/urko/go-grpc-certificate
Then place in your code like this
package main
// here should be defined your imports
certcreds "gitea.urkob.com/urko/go-grpc-certificate/pkg/credentials"
func main() {
certPath := "place your certificate path"
certKeyPath := "place your key file path"
keyPassword := "place your key password here"
creds, err = certcreds.CredentialsFromKeyWithPasswd(
certPah, certKeyPath, keyPassword,
)
if err != nil {
log.Fatalf("Failed loading certificates: %v\n", err)
}
}