Documentation
¶
Index ¶
- Variables
- func Authorize(ctx context.Context, ac AccessControlService, attr authorizer.Attributes) (authorized authorizer.Decision, reason string, err error)
- func NewStorage(legacySvc ReceiverService, namespacer request.NamespaceMapper, ...) grafanarest.Storage
- type AccessControlService
- type MetadataService
- type ReceiverService
Constants ¶
This section is empty.
Variables ¶
View Source
var ResourceInfo = utils.NewResourceInfo(kind.Group(), kind.Version(), kind.GroupVersionResource().Resource, strings.ToLower(kind.Kind()), kind.Kind(), func() runtime.Object { return kind.ZeroValue() }, func() runtime.Object { return kind.ZeroListValue() }, utils.TableColumns{ Definition: []metav1.TableColumnDefinition{ {Name: "Name", Type: "string", Format: "name"}, {Name: "Title", Type: "string", Format: "string", Description: "The receiver name"}, }, Reader: func(obj any) ([]interface{}, error) { r, ok := obj.(*model.Receiver) if ok { return []interface{}{ r.Name, r.Spec.Title, }, nil } return nil, fmt.Errorf("expected resource or info") }, }, )
Functions ¶
func Authorize ¶
func Authorize(ctx context.Context, ac AccessControlService, attr authorizer.Attributes) (authorized authorizer.Decision, reason string, err error)
func NewStorage ¶
func NewStorage( legacySvc ReceiverService, namespacer request.NamespaceMapper, metadata MetadataService, ) grafanarest.Storage
Types ¶
type AccessControlService ¶
type AccessControlService interface {
AuthorizeReadSome(ctx context.Context, user identity.Requester) error
AuthorizeReadByUID(context.Context, identity.Requester, string) error
AuthorizeCreate(context.Context, identity.Requester) error
AuthorizeUpdateByUID(context.Context, identity.Requester, string) error
AuthorizeDeleteByUID(context.Context, identity.Requester, string) error
}
AccessControlService provides access control for receivers.
type MetadataService ¶
type MetadataService interface {
AccessControlMetadata(ctx context.Context, user identity.Requester, receivers ...*ngmodels.Receiver) (map[string]ngmodels.ReceiverPermissionSet, error)
InUseMetadata(ctx context.Context, orgID int64, receivers ...*ngmodels.Receiver) (map[string]ngmodels.ReceiverMetadata, error)
}
type ReceiverService ¶
type ReceiverService interface {
GetReceiver(ctx context.Context, q ngmodels.GetReceiverQuery, user identity.Requester) (*ngmodels.Receiver, error)
GetReceivers(ctx context.Context, q ngmodels.GetReceiversQuery, user identity.Requester) ([]*ngmodels.Receiver, error)
CreateReceiver(ctx context.Context, r *ngmodels.Receiver, orgID int64, user identity.Requester) (*ngmodels.Receiver, error)
UpdateReceiver(ctx context.Context, r *ngmodels.Receiver, storedSecureFields map[string][]string, orgID int64, user identity.Requester) (*ngmodels.Receiver, error)
DeleteReceiver(ctx context.Context, name string, provenance ngmodels.Provenance, version string, orgID int64, user identity.Requester) error
}
Click to show internal directories.
Click to hide internal directories.