Encryption: Add usage stats to secrets service (#42437)

* Encryption: Add usage stats to secrets service

* Sort imports
This commit is contained in:
Tania B
2021-11-29 16:35:15 +02:00
committed by GitHub
parent e440796cb3
commit 58978dcf96
3 changed files with 35 additions and 4 deletions
@@ -4,6 +4,7 @@ import (
"context"
"testing"
"github.com/grafana/grafana/pkg/infra/usagestats"
"github.com/grafana/grafana/pkg/services/encryption/ossencryption"
"github.com/grafana/grafana/pkg/services/kmsproviders/osskmsproviders"
"github.com/grafana/grafana/pkg/services/secrets"
@@ -35,6 +36,7 @@ func TestSecretsService_EnvelopeEncryption(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, len(keys), 1)
})
t.Run("encrypting another secret with no entity_id should use the same DEK", func(t *testing.T) {
plaintext := []byte("another very secret string")
@@ -49,6 +51,7 @@ func TestSecretsService_EnvelopeEncryption(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, len(keys), 1)
})
t.Run("encrypting with entity_id provided should create a new DEK", func(t *testing.T) {
plaintext := []byte("some test data")
@@ -78,6 +81,13 @@ func TestSecretsService_EnvelopeEncryption(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, expected, string(decrypted))
})
t.Run("usage stats should be registered", func(t *testing.T) {
reports, err := svc.usageStats.GetUsageReport(context.Background())
require.NoError(t, err)
assert.Equal(t, 1, reports.Metrics["stats.encryption.envelope_encryption_enabled.count"])
})
}
func TestSecretsService_DataKeys(t *testing.T) {
@@ -181,6 +191,7 @@ func TestSecretsService_UseCurrentProvider(t *testing.T) {
&kms,
encr,
settings,
&usagestats.UsageStatsMock{T: t},
)
require.NoError(t, err)
@@ -197,6 +208,7 @@ func TestSecretsService_UseCurrentProvider(t *testing.T) {
&kms,
encr,
settings,
&usagestats.UsageStatsMock{T: t},
)
require.NoError(t, err)