Documentation ¶
Index ¶
- Constants
- type AccessKey
- type AccessKeyMetadata
- type Encryptor
- type EtcdRepository
- func (r *EtcdRepository) GetAccessKeyKey(key string) string
- func (r *EtcdRepository) GetAccessKeyPermissions(ctx context.Context, key string) (*permissions.AccessKeyPermissions, bool, error)
- func (r *EtcdRepository) GetAccessMetaKey(key string) string
- func (r *EtcdRepository) GetAccessSetKey() string
- func (r *EtcdRepository) PaginateAccessKeys(ctx context.Context, page int, size int) (*PaginatedAccessKeys, error)
- func (r *EtcdRepository) RemoveKeys(ctx context.Context, keys []string) error
- func (r *EtcdRepository) StoreAccessKey(ctx context.Context, accessKey AccessKey) error
- type PaginatedAccessKeys
- type RedisRepository
- func (r *RedisRepository) GetAccessKeyKey(key string) string
- func (r *RedisRepository) GetAccessKeyPermissions(ctx context.Context, key string) (*permissions.AccessKeyPermissions, bool, error)
- func (r *RedisRepository) GetAccessMetaKey(key string) string
- func (r *RedisRepository) GetAccessSetKey() string
- func (r *RedisRepository) PaginateAccessKeys(ctx context.Context, page int, size int) (*PaginatedAccessKeys, error)
- func (r *RedisRepository) RemoveKeys(ctx context.Context, keys []string) error
- func (r *RedisRepository) StoreAccessKey(ctx context.Context, accessKey AccessKey) error
- type Repository
- type RepositoryConfig
Constants ¶
View Source
const ( AccessPrefix = "configleam:access" KeyPrefix = "key" MetaPrefix = "meta" SetPrefix = "set" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccessKey ¶
type AccessKey struct { Key string Perms permissions.AccessKeyPermissions Metadata AccessKeyMetadata }
type AccessKeyMetadata ¶
type AccessKeyMetadata struct { Key string Name string `json:"name"` MaskedKey string `json:"masked_key"` ExpirationDate time.Time `json:"expiration_date"` CreationDate time.Time `json:"creation_date"` Permissions permissions.AccessKeyPermissions `json:"permissions"` }
type EtcdRepository ¶
func NewEtcdRepository ¶
func NewEtcdRepository(redis *etcd.Etcd, encryptor Encryptor) *EtcdRepository
func (*EtcdRepository) GetAccessKeyKey ¶
func (r *EtcdRepository) GetAccessKeyKey(key string) string
func (*EtcdRepository) GetAccessKeyPermissions ¶
func (r *EtcdRepository) GetAccessKeyPermissions(ctx context.Context, key string) (*permissions.AccessKeyPermissions, bool, error)
func (*EtcdRepository) GetAccessMetaKey ¶
func (r *EtcdRepository) GetAccessMetaKey(key string) string
func (*EtcdRepository) GetAccessSetKey ¶
func (r *EtcdRepository) GetAccessSetKey() string
func (*EtcdRepository) PaginateAccessKeys ¶
func (r *EtcdRepository) PaginateAccessKeys(ctx context.Context, page int, size int) (*PaginatedAccessKeys, error)
func (*EtcdRepository) RemoveKeys ¶
func (r *EtcdRepository) RemoveKeys(ctx context.Context, keys []string) error
func (*EtcdRepository) StoreAccessKey ¶
func (r *EtcdRepository) StoreAccessKey(ctx context.Context, accessKey AccessKey) error
type PaginatedAccessKeys ¶
type PaginatedAccessKeys struct { Total int `json:"total"` Pages int `json:"pages"` Page int `json:"page"` Size int `json:"size"` Items []AccessKeyMetadata `json:"items"` }
type RedisRepository ¶
func NewRedisRepository ¶
func NewRedisRepository(redis *rds.Redis, encryptor Encryptor) *RedisRepository
func (*RedisRepository) GetAccessKeyKey ¶
func (r *RedisRepository) GetAccessKeyKey(key string) string
func (*RedisRepository) GetAccessKeyPermissions ¶
func (r *RedisRepository) GetAccessKeyPermissions(ctx context.Context, key string) (*permissions.AccessKeyPermissions, bool, error)
func (*RedisRepository) GetAccessMetaKey ¶
func (r *RedisRepository) GetAccessMetaKey(key string) string
func (*RedisRepository) GetAccessSetKey ¶
func (r *RedisRepository) GetAccessSetKey() string
func (*RedisRepository) PaginateAccessKeys ¶
func (r *RedisRepository) PaginateAccessKeys(ctx context.Context, page int, size int) (*PaginatedAccessKeys, error)
func (*RedisRepository) RemoveKeys ¶
func (r *RedisRepository) RemoveKeys(ctx context.Context, keys []string) error
func (*RedisRepository) StoreAccessKey ¶
func (r *RedisRepository) StoreAccessKey(ctx context.Context, accessKey AccessKey) error
type Repository ¶
type Repository interface { StoreAccessKey(ctx context.Context, accessKey AccessKey) error GetAccessKeyPermissions(ctx context.Context, key string) (*permissions.AccessKeyPermissions, bool, error) PaginateAccessKeys(ctx context.Context, page int, size int) (*PaginatedAccessKeys, error) RemoveKeys(ctx context.Context, keys []string) error }
func New ¶
func New(ctx context.Context, cfg RepositoryConfig, encryptor Encryptor) (Repository, error)
Click to show internal directories.
Click to hide internal directories.