gtls

package
v1.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 16, 2022 License: MIT Imports: 5 Imported by: 6

README

gtls

使用示例
grpc server
func main() {
	// 单向认证(服务端认证)
	//credentials, err := gtls.GetServerTLSCredentials(certfile.Path("/one-way/server.crt"), certfile.Path("/one-way/server.key"))

	// 双向认证
	credentials, err := gtls.GetServerTLSCredentialsByCA(
		certfile.Path("two-way/ca.pem"),
		certfile.Path("two-way/server/server.pem"),
		certfile.Path("two-way/server/server.key"),
	)
	if err != nil {
		panic(err)
	}

	// 拦截器
	opts := []grpc.ServerOption{
		grpc.Creds(credentials),
	}

	// 创建grpc server对象,拦截器可以在这里注入
	server := grpc.NewServer(opts...)

	// ......
}

grpc client
func main() {
	// 单向认证
	//credentials, err := gtls.GetClientTLSCredentials("localhost", certfile.Path("/one-way/server.crt"))

	// 双向认证
	credentials, err := gtls.GetClientTLSCredentialsByCA(
		"localhost",
		certfile.Path("two-way/ca.pem"),
		certfile.Path("two-way/client/client.pem"),
		certfile.Path("two-way/client/client.key"),
	)
	if err != nil {
		panic(err)
	}

	conn, err := grpc.Dial("127.0.0.1:8080", grpc.WithTransportCredentials(credentials))
	if err != nil {
		panic(err)
	}

	// ......
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetClientTLSCredentials

func GetClientTLSCredentials(serverName string, certFile string) (credentials.TransportCredentials, error)

GetClientTLSCredentials TLS加密

func GetClientTLSCredentialsByCA

func GetClientTLSCredentialsByCA(serverName string, caFile string, certFile string, keyFile string) (credentials.TransportCredentials, error)

GetClientTLSCredentialsByCA 通过CA颁发的根证书,双向认证

func GetServerTLSCredentials

func GetServerTLSCredentials(certFile string, keyFile string) (credentials.TransportCredentials, error)

GetServerTLSCredentials 服务端认证

func GetServerTLSCredentialsByCA

func GetServerTLSCredentialsByCA(caFile string, certFile string, keyFile string) (credentials.TransportCredentials, error)

GetServerTLSCredentialsByCA 通过CA颁发的根证书,用来双向认证

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL