grafana/pkg/services/kmsproviders/osskmsproviders/osskmsproviders.go
Joan López de la Franca Beltran 532e71554f
Usage Stats: Add metrics to count enabled kms providers per kind (#43640)
* Usage Insights: Add metrics to count enabled kms providers per kind

* Add backwards compatibility
2022-01-07 13:52:28 +01:00

32 lines
843 B
Go

package osskmsproviders
import (
"github.com/grafana/grafana/pkg/services/encryption"
"github.com/grafana/grafana/pkg/services/kmsproviders"
grafana "github.com/grafana/grafana/pkg/services/kmsproviders/defaultprovider"
"github.com/grafana/grafana/pkg/services/secrets"
"github.com/grafana/grafana/pkg/setting"
)
type Service struct {
enc encryption.Internal
settings setting.Provider
}
func ProvideService(enc encryption.Internal, settings setting.Provider) Service {
return Service{
enc: enc,
settings: settings,
}
}
func (s Service) Provide() (map[secrets.ProviderID]secrets.Provider, error) {
if !s.settings.IsFeatureToggleEnabled(secrets.EnvelopeEncryptionFeatureToggle) {
return nil, nil
}
return map[secrets.ProviderID]secrets.Provider{
kmsproviders.Default: grafana.New(s.settings, s.enc),
}, nil
}