Skip to content

Instantly share code, notes, and snippets.

@nleiva
Created July 9, 2019 13:58
Show Gist options
  • Save nleiva/c5fb36c24383c8ed4bc0c73e87021027 to your computer and use it in GitHub Desktop.
Save nleiva/c5fb36c24383c8ed4bc0c73e87021027 to your computer and use it in GitHub Desktop.
// Client
b, _ := ioutil.ReadFile("ca.cert")
cp := x509.NewCertPool()
if !cp.AppendCertsFromPEM(b) {
return nil, errors.New("credentials: failed to append certificates")
}
config := &tls.Config{
InsecureSkipVerify: false,
RootCAs: cp,
}
conn, err := grpc.Dial(address, grpc.WithTransportCredentials(credentials.NewTLS(config)))
if err != nil {
log.Fatalf("did not connect: %v", err)
}
defer conn.Close()
// Server
creds, err := credentials.NewServerTLSFromFile("service.pem", "service.key")
if err != nil {
log.Fatalf("Failed to setup TLS: %v", err)
}
s := grpc.NewServer(grpc.Creds(creds))
// ... register gRPC services ...
if err = s.Serve(lis); err != nil {
log.Fatalf("failed to serve: %v", err)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment