collection

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 12, 2022 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ServiceConfiguration_CollectionModule_name = map[int32]string{
		0: "COLLECTION_MODULE_UNKNOWN",
		1: "PUBLIC_REGISTRY",
		2: "COMMUNICATION_SECURITY",
		3: "AUTHENTICATION_SECURITY",
		4: "REMOTE_INTEGRITY",
		5: "WORKLOAD_CONFIGURATION",
	}
	ServiceConfiguration_CollectionModule_value = map[string]int32{
		"COLLECTION_MODULE_UNKNOWN": 0,
		"PUBLIC_REGISTRY":           1,
		"COMMUNICATION_SECURITY":    2,
		"AUTHENTICATION_SECURITY":   3,
		"REMOTE_INTEGRITY":          4,
		"WORKLOAD_CONFIGURATION":    5,
	}
)

Enum value maps for ServiceConfiguration_CollectionModule.

View Source
var (
	ErrInvalidServiceID                             = errors.New("serviceID is invalid")
	ErrMissingServiceID                             = errors.New("serviceID is missing")
	ErrRequestServiceID                             = errors.New("serviceID in request is invalid")
	ErrMissingServiceConfigurationServiceID         = errors.New("serviceID in service configuration is invalid")
	ErrMissingEvalManager                           = errors.New("evaluation manager URL is missing")
	ErrMissingServiceConfiguration                  = errors.New("service configuration is missing")
	ErrMissingRawConfiguration                      = errors.New("service configuration is missing")
	ErrInvalidRemoteIntegrityRawConfiguration       = errors.New("no remote integrity raw configuration")
	ErrInvalidWorkloadConfigurationRawConfiguration = errors.New("no workload raw configuration")
	ErrInvalidKubernetesServiceConfiguration        = errors.New("kubernetes service configuration is invalid")
	ErrInvalidOpenstackServiceConfiguration         = errors.New("could not store openstack service configuration")
	ErrConversionProtobufToByteArray                = errors.New("could not convert protobuf value to byte array")
	ErrKubernetesClientset                          = errors.New("could not get kubernetes clientset")
	ErrConversionProtobufToAuthOptions              = errors.New("could not convert protobuf value to openstack.authOptions")
)
View Source
var Collection_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "cam.Collection",
	HandlerType: (*CollectionServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "StartCollecting",
			Handler:    _Collection_StartCollecting_Handler,
		},
		{
			MethodName: "StopCollecting",
			Handler:    _Collection_StopCollecting_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "StartCollectingStream",
			Handler:       _Collection_StartCollectingStream_Handler,
			ClientStreams: true,
		},
	},
	Metadata: "api/collection/collection.proto",
}

Collection_ServiceDesc is the grpc.ServiceDesc for Collection service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var File_api_collection_collection_proto protoreflect.FileDescriptor

Functions

func IsValidUUID

func IsValidUUID(u string) bool

Check if string is a valid UUID

func RegisterCollectionServer

func RegisterCollectionServer(s grpc.ServiceRegistrar, srv CollectionServer)

Types

type AuthenticationSecurityConfig

type AuthenticationSecurityConfig struct {

	// Required. The URL of the Authorization Server issuing the token.
	Issuer string `protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"`
	// Optional. The URL for Authorization Server Metadata (RFC8414)
	MetadataDocument string `protobuf:"bytes,2,opt,name=metadata_document,json=metadataDocument,proto3" json:"metadata_document,omitempty"`
	// Required? ...
	ApiEndpoint string `protobuf:"bytes,3,opt,name=api_endpoint,json=apiEndpoint,proto3" json:"api_endpoint,omitempty"`
	//
	ClientId string `protobuf:"bytes,4,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	//
	ClientSecret string `protobuf:"bytes,5,opt,name=client_secret,json=clientSecret,proto3" json:"client_secret,omitempty"`
	//
	Scopes string `protobuf:"bytes,6,opt,name=scopes,proto3" json:"scopes,omitempty"`
	// contains filtered or unexported fields
}

A resource representing the configuration for the Authentication Security Collection Module TODO(bellebaum): Add remaining comments

func (*AuthenticationSecurityConfig) Descriptor deprecated

func (*AuthenticationSecurityConfig) Descriptor() ([]byte, []int)

Deprecated: Use AuthenticationSecurityConfig.ProtoReflect.Descriptor instead.

func (*AuthenticationSecurityConfig) GetApiEndpoint added in v0.2.0

func (x *AuthenticationSecurityConfig) GetApiEndpoint() string

func (*AuthenticationSecurityConfig) GetClientId added in v0.2.0

func (x *AuthenticationSecurityConfig) GetClientId() string

func (*AuthenticationSecurityConfig) GetClientSecret added in v0.2.0

func (x *AuthenticationSecurityConfig) GetClientSecret() string

func (*AuthenticationSecurityConfig) GetIssuer

func (x *AuthenticationSecurityConfig) GetIssuer() string

func (*AuthenticationSecurityConfig) GetMetadataDocument

func (x *AuthenticationSecurityConfig) GetMetadataDocument() string

func (*AuthenticationSecurityConfig) GetScopes added in v0.2.0

func (x *AuthenticationSecurityConfig) GetScopes() string

func (*AuthenticationSecurityConfig) ProtoMessage

func (*AuthenticationSecurityConfig) ProtoMessage()

func (*AuthenticationSecurityConfig) ProtoReflect

func (*AuthenticationSecurityConfig) Reset

func (x *AuthenticationSecurityConfig) Reset()

func (*AuthenticationSecurityConfig) String

type CollectionClient

type CollectionClient interface {
	// Trigger a collection module to do a single collection
	StartCollecting(ctx context.Context, in *StartCollectingRequest, opts ...grpc.CallOption) (*StartCollectingResponse, error)
	// StopCollecting is currently not used
	StopCollecting(ctx context.Context, in *StopCollectingRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
	// Set up a stream to a collection module for triggering multiple collections
	StartCollectingStream(ctx context.Context, opts ...grpc.CallOption) (Collection_StartCollectingStreamClient, error)
}

CollectionClient is the client API for Collection service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewCollectionClient

func NewCollectionClient(cc grpc.ClientConnInterface) CollectionClient

type CollectionModule

type CollectionModule struct {
	Id          string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name        string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Reference to the metric according to which this module is gathering
	// evidences
	// TODO(oxisto): In phase 2 we should either get rid of this or make it an
	// array
	MetricId string `protobuf:"bytes,4,opt,name=metric_id,json=metricId,proto3" json:"metric_id,omitempty"`
	// gRPC address of the collection module
	Address string `protobuf:"bytes,5,opt,name=address,proto3" json:"address,omitempty"`
	// contains filtered or unexported fields
}

A resource representing a collection module which collects technical evidences

func (*CollectionModule) Descriptor deprecated

func (*CollectionModule) Descriptor() ([]byte, []int)

Deprecated: Use CollectionModule.ProtoReflect.Descriptor instead.

func (*CollectionModule) GetAddress

func (x *CollectionModule) GetAddress() string

func (*CollectionModule) GetDescription

func (x *CollectionModule) GetDescription() string

func (*CollectionModule) GetId

func (x *CollectionModule) GetId() string

func (*CollectionModule) GetMetricId

func (x *CollectionModule) GetMetricId() string

func (*CollectionModule) GetName

func (x *CollectionModule) GetName() string

func (*CollectionModule) ProtoMessage

func (*CollectionModule) ProtoMessage()

func (*CollectionModule) ProtoReflect

func (x *CollectionModule) ProtoReflect() protoreflect.Message

func (*CollectionModule) Reset

func (x *CollectionModule) Reset()

func (*CollectionModule) String

func (x *CollectionModule) String() string

type CollectionServer

type CollectionServer interface {
	// Trigger a collection module to do a single collection
	StartCollecting(context.Context, *StartCollectingRequest) (*StartCollectingResponse, error)
	// StopCollecting is currently not used
	StopCollecting(context.Context, *StopCollectingRequest) (*emptypb.Empty, error)
	// Set up a stream to a collection module for triggering multiple collections
	StartCollectingStream(Collection_StartCollectingStreamServer) error
	// contains filtered or unexported methods
}

CollectionServer is the server API for Collection service. All implementations must embed UnimplementedCollectionServer for forward compatibility

type Collection_StartCollectingStreamClient

type Collection_StartCollectingStreamClient interface {
	Send(*StartCollectingRequest) error
	CloseAndRecv() (*emptypb.Empty, error)
	grpc.ClientStream
}

type Collection_StartCollectingStreamServer

type Collection_StartCollectingStreamServer interface {
	SendAndClose(*emptypb.Empty) error
	Recv() (*StartCollectingRequest, error)
	grpc.ServerStream
}

type CommunicationSecurityConfig

type CommunicationSecurityConfig struct {
	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
	// contains filtered or unexported fields
}

func (*CommunicationSecurityConfig) Descriptor deprecated

func (*CommunicationSecurityConfig) Descriptor() ([]byte, []int)

Deprecated: Use CommunicationSecurityConfig.ProtoReflect.Descriptor instead.

func (*CommunicationSecurityConfig) GetEndpoint

func (x *CommunicationSecurityConfig) GetEndpoint() string

func (*CommunicationSecurityConfig) ProtoMessage

func (*CommunicationSecurityConfig) ProtoMessage()

func (*CommunicationSecurityConfig) ProtoReflect

func (*CommunicationSecurityConfig) Reset

func (x *CommunicationSecurityConfig) Reset()

func (*CommunicationSecurityConfig) String

func (x *CommunicationSecurityConfig) String() string

type ConfigType

type ConfigType interface {
	string | *openstack.AuthOptions
}

ConfigType contains the possible config types for the ToStruct method

type RemoteIntegrityConfig

type RemoteIntegrityConfig struct {
	Target      string `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"`
	Certificate string `protobuf:"bytes,2,opt,name=certificate,proto3" json:"certificate,omitempty"`
	// contains filtered or unexported fields
}

func (*RemoteIntegrityConfig) Descriptor deprecated

func (*RemoteIntegrityConfig) Descriptor() ([]byte, []int)

Deprecated: Use RemoteIntegrityConfig.ProtoReflect.Descriptor instead.

func (*RemoteIntegrityConfig) GetCertificate

func (x *RemoteIntegrityConfig) GetCertificate() string

func (*RemoteIntegrityConfig) GetTarget

func (x *RemoteIntegrityConfig) GetTarget() string

func (*RemoteIntegrityConfig) ProtoMessage

func (*RemoteIntegrityConfig) ProtoMessage()

func (*RemoteIntegrityConfig) ProtoReflect

func (x *RemoteIntegrityConfig) ProtoReflect() protoreflect.Message

func (*RemoteIntegrityConfig) Reset

func (x *RemoteIntegrityConfig) Reset()

func (*RemoteIntegrityConfig) String

func (x *RemoteIntegrityConfig) String() string

type ServiceConfiguration

type ServiceConfiguration struct {

	// The cloud service this configuration is used for. It is used as a composite
	// primary key together with the collection module type.
	ServiceId string `protobuf:"bytes,1,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty" gorm:"primaryKey"`
	// The type of collection module. This value needs to be the same as the @type
	// property within the raw_configuration. It is used as a composite primary
	// key together with the service ID.
	CollectionModule string `` /* 127-byte string literal not displayed */
	// The raw configuration value. This is most likely a JSON or YAML
	// representation of a config file specific to a collection module.
	RawConfiguration *anypb.Any `` /* 133-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*ServiceConfiguration) Descriptor deprecated

func (*ServiceConfiguration) Descriptor() ([]byte, []int)

Deprecated: Use ServiceConfiguration.ProtoReflect.Descriptor instead.

func (*ServiceConfiguration) GetCollectionModule

func (x *ServiceConfiguration) GetCollectionModule() string

func (*ServiceConfiguration) GetRawConfiguration

func (x *ServiceConfiguration) GetRawConfiguration() *anypb.Any

func (*ServiceConfiguration) GetServiceId

func (x *ServiceConfiguration) GetServiceId() string

func (*ServiceConfiguration) ProtoMessage

func (*ServiceConfiguration) ProtoMessage()

func (*ServiceConfiguration) ProtoReflect

func (x *ServiceConfiguration) ProtoReflect() protoreflect.Message

func (*ServiceConfiguration) Reset

func (x *ServiceConfiguration) Reset()

func (*ServiceConfiguration) String

func (x *ServiceConfiguration) String() string

type ServiceConfiguration_CollectionModule

type ServiceConfiguration_CollectionModule int32
const (
	ServiceConfiguration_COLLECTION_MODULE_UNKNOWN ServiceConfiguration_CollectionModule = 0
	ServiceConfiguration_PUBLIC_REGISTRY           ServiceConfiguration_CollectionModule = 1
	ServiceConfiguration_COMMUNICATION_SECURITY    ServiceConfiguration_CollectionModule = 2
	ServiceConfiguration_AUTHENTICATION_SECURITY   ServiceConfiguration_CollectionModule = 3
	ServiceConfiguration_REMOTE_INTEGRITY          ServiceConfiguration_CollectionModule = 4
	ServiceConfiguration_WORKLOAD_CONFIGURATION    ServiceConfiguration_CollectionModule = 5
)

func (ServiceConfiguration_CollectionModule) Descriptor

func (ServiceConfiguration_CollectionModule) Enum

func (ServiceConfiguration_CollectionModule) EnumDescriptor deprecated

func (ServiceConfiguration_CollectionModule) EnumDescriptor() ([]byte, []int)

Deprecated: Use ServiceConfiguration_CollectionModule.Descriptor instead.

func (ServiceConfiguration_CollectionModule) Number

func (ServiceConfiguration_CollectionModule) String

func (ServiceConfiguration_CollectionModule) Type

type StartCollectingRequest

type StartCollectingRequest struct {
	ServiceId     string                `protobuf:"bytes,1,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"`
	MetricId      string                `protobuf:"bytes,2,opt,name=metric_id,json=metricId,proto3" json:"metric_id,omitempty"`
	EvalManager   string                `protobuf:"bytes,3,opt,name=eval_manager,json=evalManager,proto3" json:"eval_manager,omitempty"`
	Configuration *ServiceConfiguration `protobuf:"bytes,10,opt,name=configuration,proto3" json:"configuration,omitempty"`
	// contains filtered or unexported fields
}

func (*StartCollectingRequest) Descriptor deprecated

func (*StartCollectingRequest) Descriptor() ([]byte, []int)

Deprecated: Use StartCollectingRequest.ProtoReflect.Descriptor instead.

func (*StartCollectingRequest) GetConfiguration

func (x *StartCollectingRequest) GetConfiguration() *ServiceConfiguration

func (*StartCollectingRequest) GetEvalManager

func (x *StartCollectingRequest) GetEvalManager() string

func (*StartCollectingRequest) GetMetricId

func (x *StartCollectingRequest) GetMetricId() string

func (*StartCollectingRequest) GetServiceId

func (x *StartCollectingRequest) GetServiceId() string

func (*StartCollectingRequest) KubeConfig

func (req *StartCollectingRequest) KubeConfig() (config []byte, err error)

KubeConfig returns the file content of the kube config file

func (*StartCollectingRequest) ProtoMessage

func (*StartCollectingRequest) ProtoMessage()

func (*StartCollectingRequest) ProtoReflect

func (x *StartCollectingRequest) ProtoReflect() protoreflect.Message

func (*StartCollectingRequest) Reset

func (x *StartCollectingRequest) Reset()

func (*StartCollectingRequest) String

func (x *StartCollectingRequest) String() string

func (*StartCollectingRequest) Validate

func (req *StartCollectingRequest) Validate() error

Validate validates the StartCollectingRequest

type StartCollectingResponse

type StartCollectingResponse struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*StartCollectingResponse) Descriptor deprecated

func (*StartCollectingResponse) Descriptor() ([]byte, []int)

Deprecated: Use StartCollectingResponse.ProtoReflect.Descriptor instead.

func (*StartCollectingResponse) GetId

func (x *StartCollectingResponse) GetId() string

func (*StartCollectingResponse) ProtoMessage

func (*StartCollectingResponse) ProtoMessage()

func (*StartCollectingResponse) ProtoReflect

func (x *StartCollectingResponse) ProtoReflect() protoreflect.Message

func (*StartCollectingResponse) Reset

func (x *StartCollectingResponse) Reset()

func (*StartCollectingResponse) String

func (x *StartCollectingResponse) String() string

type StopCollectingRequest

type StopCollectingRequest struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*StopCollectingRequest) Descriptor deprecated

func (*StopCollectingRequest) Descriptor() ([]byte, []int)

Deprecated: Use StopCollectingRequest.ProtoReflect.Descriptor instead.

func (*StopCollectingRequest) GetId

func (x *StopCollectingRequest) GetId() string

func (*StopCollectingRequest) ProtoMessage

func (*StopCollectingRequest) ProtoMessage()

func (*StopCollectingRequest) ProtoReflect

func (x *StopCollectingRequest) ProtoReflect() protoreflect.Message

func (*StopCollectingRequest) Reset

func (x *StopCollectingRequest) Reset()

func (*StopCollectingRequest) String

func (x *StopCollectingRequest) String() string

type UnimplementedCollectionServer

type UnimplementedCollectionServer struct {
}

UnimplementedCollectionServer must be embedded to have forward compatible implementations.

func (UnimplementedCollectionServer) StartCollecting

func (UnimplementedCollectionServer) StartCollectingStream

func (UnimplementedCollectionServer) StopCollecting

type UnsafeCollectionServer

type UnsafeCollectionServer interface {
	// contains filtered or unexported methods
}

UnsafeCollectionServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to CollectionServer will result in compilation errors.

type WorkloadSecurityConfig

type WorkloadSecurityConfig struct {

	// TODO(lebogg to garuppel): Is string possible as well?
	// TODO(lebogg to garuppel): We could use oneof
	Openstack  *structpb.Value `protobuf:"bytes,1,opt,name=openstack,proto3" json:"openstack,omitempty"`
	Kubernetes *structpb.Value `protobuf:"bytes,2,opt,name=kubernetes,proto3" json:"kubernetes,omitempty"`
	// contains filtered or unexported fields
}

func (*WorkloadSecurityConfig) Descriptor deprecated

func (*WorkloadSecurityConfig) Descriptor() ([]byte, []int)

Deprecated: Use WorkloadSecurityConfig.ProtoReflect.Descriptor instead.

func (*WorkloadSecurityConfig) GetKubernetes

func (x *WorkloadSecurityConfig) GetKubernetes() *structpb.Value

func (*WorkloadSecurityConfig) GetOpenstack

func (x *WorkloadSecurityConfig) GetOpenstack() *structpb.Value

func (*WorkloadSecurityConfig) ProtoMessage

func (*WorkloadSecurityConfig) ProtoMessage()

func (*WorkloadSecurityConfig) ProtoReflect

func (x *WorkloadSecurityConfig) ProtoReflect() protoreflect.Message

func (*WorkloadSecurityConfig) Reset

func (x *WorkloadSecurityConfig) Reset()

func (*WorkloadSecurityConfig) String

func (x *WorkloadSecurityConfig) String() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL