服务安全与可观测性实践
1. 服务安全授权
1.1 配置 gRPC 服务器认证拦截器
为了让 gRPC 服务器识别每个 RPC 的主体并启动授权过程,我们需要将 authenticate() 拦截器连接到 gRPC 服务器。以下是相关代码:
func NewGRPCServer(config *Config, opts ...grpc.ServerOption) (
*grpc.Server,
error,
) {
opts = append(opts, grpc.StreamInterceptor(
grpc_middleware.ChainStreamServer(
grpc_auth.StreamServerInterceptor(authenticate),
)), grpc.UnaryInterceptor(grpc_middleware.ChainUnaryServer(
grpc_auth.UnaryServerInterceptor(authenticate),
)))
gsrv := grpc.NewServer(opts...)
srv, err := newgrpcServer(config)
if err != nil {
return nil, err
}
api.RegisterLogServer(gsrv, srv)
return gsrv, nil
}
超级会员免费看
订阅专栏 解锁全文
998

被折叠的 条评论
为什么被折叠?



