mirror of
https://github.com/grafana/grafana.git
synced 2025-02-15 10:03:33 -06:00
* Encryption: Enable envelope encryption by default * Stop relying on feature toggles from settings (deprecated) * Database encryption docs (envelope encryption) * Remove deprecated (and no longer used) FT * Apply suggestions from code review Co-authored-by: Tania <yalyna.ts@gmail.com>
50 lines
1.2 KiB
Go
50 lines
1.2 KiB
Go
package manager
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/grafana/grafana/pkg/infra/usagestats"
|
|
"github.com/grafana/grafana/pkg/services/encryption/ossencryption"
|
|
"github.com/grafana/grafana/pkg/services/featuremgmt"
|
|
"github.com/grafana/grafana/pkg/services/kmsproviders/osskmsproviders"
|
|
"github.com/grafana/grafana/pkg/services/secrets"
|
|
"github.com/grafana/grafana/pkg/setting"
|
|
"github.com/stretchr/testify/require"
|
|
"gopkg.in/ini.v1"
|
|
)
|
|
|
|
func SetupTestService(tb testing.TB, store secrets.Store) *SecretsService {
|
|
tb.Helper()
|
|
defaultKey := "SdlklWklckeLS"
|
|
if len(setting.SecretKey) > 0 {
|
|
defaultKey = setting.SecretKey
|
|
}
|
|
raw, err := ini.Load([]byte(`
|
|
[security]
|
|
secret_key = ` + defaultKey + `
|
|
|
|
[security.encryption]
|
|
data_keys_cache_ttl = 5m
|
|
data_keys_cache_cleanup_interval = 1ns`))
|
|
require.NoError(tb, err)
|
|
|
|
features := featuremgmt.WithFeatures()
|
|
|
|
cfg := &setting.Cfg{Raw: raw}
|
|
|
|
settings := &setting.OSSImpl{Cfg: cfg}
|
|
|
|
encryption := ossencryption.ProvideService()
|
|
secretsService, err := ProvideSecretsService(
|
|
store,
|
|
osskmsproviders.ProvideService(encryption, settings, features),
|
|
encryption,
|
|
settings,
|
|
features,
|
|
&usagestats.UsageStatsMock{T: tb},
|
|
)
|
|
require.NoError(tb, err)
|
|
|
|
return secretsService
|
|
}
|