in pkg/plugin/server.go [91:120]
func (s *KeyManagementServiceServer) Decrypt(ctx context.Context, request *kmsv1.DecryptRequest) (*kmsv1.DecryptResponse, error) {
start := time.Now()
var err error
defer func() {
errors := ""
status := metrics.SuccessStatusTypeValue
if err != nil {
status = metrics.ErrorStatusTypeValue
errors = err.Error()
}
s.reporter.ReportRequest(ctx, metrics.DecryptOperationTypeValue, status, time.Since(start).Seconds(), errors)
}()
mlog.Info("decrypt request started")
plain, err := s.kvClient.Decrypt(
ctx,
request.Cipher,
s.encryptionAlgorithm,
request.Version,
nil,
"",
)
if err != nil {
mlog.Error("failed to decrypt", err)
return &kmsv1.DecryptResponse{}, err
}
mlog.Info("decrypt request complete")
return &kmsv1.DecryptResponse{Plain: plain}, nil
}