legacy_api_key_test.go 692 B

123456789101112131415161718192021
  1. package service
  2. import (
  3. "context"
  4. "testing"
  5. "time"
  6. "github.com/stretchr/testify/require"
  7. )
  8. func TestLegacyAPIKeyInvalidationUsesStoredDigestOnlyForInvalidation(t *testing.T) {
  9. cache := &authInvalidationCacheStub{}
  10. svc := &APIKeyService{cache: cache, authCfg: apiKeyAuthCacheConfig{l2TTL: time.Minute}}
  11. digest := svc.authCacheKey("sk-legacy-key")
  12. key := &APIKey{KeyHash: digest}
  13. handle := key.AuthCacheInvalidationKey()
  14. svc.InvalidateAuthCacheByKey(context.Background(), handle)
  15. require.Contains(t, cache.deleted, digest)
  16. require.NotEqual(t, digest, svc.authCacheKey(handle), "authentication must hash the actual credential")
  17. require.Error(t, svc.ValidateCustomKey(handle))
  18. }