Documentation
¶
Index ¶
- Variables
- func ActivityProtoToSdk(activity *proto.Activity) types.Activity
- func ComponentProtoToSdk(comp *proto.Component) types.Component
- func EvidenceProtoToSdk(evidence *proto.Evidence) *types.Evidence
- func EvidenceStatusStateFromEnum(in proto.EvidenceStatusState) string
- func InitWithSubjectsAndRisksFromPolicies(ctx context.Context, logger hclog.Logger, req *proto.InitRequest, ...) (*proto.InitResponse, error)
- func InventoryItemProtoToSdk(in *proto.InventoryItem) types.InventoryItem
- func LinkProtoToSdk(link *proto.Link) types.Link
- func NewApiHelper(logger hclog.Logger, client *sdk.Client, agentLabels map[string]string, ...) *apiHelper
- func OriginActorProtoToSdk(actor *proto.OriginActor) types.OriginActor
- func OriginProtoToSdk(origin *proto.Origin) types.Origin
- func PropertyProtoToSdk(property *proto.Property) types.Property
- func ProtoToSdk[I any, O any](ins []I, transformer func(I) O) *[]O
- func ProtocolProtoToSdk(protocol *proto.Protocol) types.Protocol
- func RemediationProtoToSdk(remediation *proto.Remediation) *types.Remediation
- func RemediationTaskProtoToSdk(task *proto.RemediationTask) types.RemediationTask
- func RiskTemplateLabelSchemaProtoToSdk(label *proto.RiskTemplateLabelSchema) types.RiskTemplateLabelSchema
- func RiskTemplateProtoToSdk(riskTemplate *proto.RiskTemplate) *types.RiskTemplate
- func StepProtoToSdk(step *proto.Step) types.Step
- func SubjectLabelSchemaProtoToSdk(label *proto.SubjectLabelSchema) types.SubjectTemplateLabelSchema
- func SubjectLinkProtoToSdk(link *proto.SubjectLink) types.SubjectLink
- func SubjectPropToSdk(prop *proto.SubjectProp) types.SubjectProp
- func SubjectProtoToSdk(subject *proto.Subject) types.Subject
- func SubjectSelectorLabelProtoToSdk(label *proto.SubjectLabelSelector) types.SubjectTemplateSelectorLabel
- func SubjectTemplateProtoToSdk(subjectTemplate *proto.SubjectTemplate) *types.SubjectTemplate
- func SubjectTypeFromEnum(in proto.SubjectType) string
- func ThreatRefProtoToSdk(threatRef *proto.ThreatRef) types.ThreatRef
- type ApiHelper
- type GRPCApiHelperClient
- func (m *GRPCApiHelperClient) CreateEvidence(ctx context.Context, evidence []*proto.Evidence) error
- func (m *GRPCApiHelperClient) UpsertRiskTemplates(ctx context.Context, packageName string, riskTemplates []*proto.RiskTemplate) error
- func (m *GRPCApiHelperClient) UpsertSubjectTemplates(ctx context.Context, subjectTemplates []*proto.SubjectTemplate) error
- type GRPCApiHelperServer
- func (m *GRPCApiHelperServer) CreateEvidence(ctx context.Context, req *proto.CreateEvidenceRequest) (resp *proto.CreateEvidenceResponse, err error)
- func (m *GRPCApiHelperServer) SetImpl(impl ApiHelper)
- func (m *GRPCApiHelperServer) UpsertRiskTemplates(ctx context.Context, req *proto.UpsertRiskTemplatesRequest) (resp *proto.UpsertRiskTemplatesResponse, err error)
- func (m *GRPCApiHelperServer) UpsertSubjectTemplates(ctx context.Context, req *proto.UpsertSubjectTemplatesRequest) (resp *proto.UpsertSubjectTemplatesResponse, err error)
- type GRPCClient
- type GRPCServer
- func (m *GRPCServer) Configure(ctx context.Context, req *proto.ConfigureRequest) (*proto.ConfigureResponse, error)
- func (m *GRPCServer) Eval(ctx context.Context, req *proto.EvalRequest) (*proto.EvalResponse, error)
- func (m *GRPCServer) Init(ctx context.Context, req *proto.InitRequest) (*proto.InitResponse, error)
- type Runner
- type RunnerGRPCPlugin
- type RunnerV2
- type RunnerV2GRPCPlugin
Constants ¶
This section is empty.
Variables ¶
View Source
var HandshakeConfig = plugin.HandshakeConfig{
ProtocolVersion: 1,
MagicCookieKey: "RUNNER_PLUGIN",
MagicCookieValue: "AC755DCE-C118-481A-8EFA-18D8675D8122",
}
View Source
var PluginMap = map[string]plugin.Plugin{ "runner": &RunnerGRPCPlugin{}, }
Functions ¶
func ActivityProtoToSdk ¶ added in v0.1.0
func ComponentProtoToSdk ¶ added in v0.2.0
func EvidenceProtoToSdk ¶ added in v0.2.0
func EvidenceStatusStateFromEnum ¶ added in v0.2.0
func EvidenceStatusStateFromEnum(in proto.EvidenceStatusState) string
func InitWithSubjectsAndRisksFromPolicies ¶ added in v0.3.1
func InitWithSubjectsAndRisksFromPolicies( ctx context.Context, logger hclog.Logger, req *proto.InitRequest, apiHelper ApiHelper, subjectTemplates []*proto.SubjectTemplate, ) (*proto.InitResponse, error)
InitWithSubjectsAndRisksFromPolicies is a helper for RunnerV2 plugins that handles the standard Init flow: upsert subject templates, then for each policy path parse risk templates and upsert them. Errors on subject template upsert are fatal; errors on individual policy paths or risk template packages are logged and skipped so that a single bad policy does not abort the rest.
func InventoryItemProtoToSdk ¶ added in v0.2.0
func InventoryItemProtoToSdk(in *proto.InventoryItem) types.InventoryItem
func NewApiHelper ¶ added in v0.1.0
func OriginActorProtoToSdk ¶ added in v0.1.0
func OriginActorProtoToSdk(actor *proto.OriginActor) types.OriginActor
func PropertyProtoToSdk ¶ added in v0.1.0
func ProtoToSdk ¶ added in v0.2.0
func ProtocolProtoToSdk ¶ added in v0.2.0
func RemediationProtoToSdk ¶ added in v0.3.0
func RemediationProtoToSdk(remediation *proto.Remediation) *types.Remediation
func RemediationTaskProtoToSdk ¶ added in v0.3.0
func RemediationTaskProtoToSdk(task *proto.RemediationTask) types.RemediationTask
func RiskTemplateLabelSchemaProtoToSdk ¶ added in v0.3.2
func RiskTemplateLabelSchemaProtoToSdk(label *proto.RiskTemplateLabelSchema) types.RiskTemplateLabelSchema
func RiskTemplateProtoToSdk ¶ added in v0.3.0
func RiskTemplateProtoToSdk(riskTemplate *proto.RiskTemplate) *types.RiskTemplate
func SubjectLabelSchemaProtoToSdk ¶ added in v0.3.0
func SubjectLabelSchemaProtoToSdk(label *proto.SubjectLabelSchema) types.SubjectTemplateLabelSchema
func SubjectLinkProtoToSdk ¶ added in v0.3.0
func SubjectLinkProtoToSdk(link *proto.SubjectLink) types.SubjectLink
func SubjectPropToSdk ¶ added in v0.3.0
func SubjectPropToSdk(prop *proto.SubjectProp) types.SubjectProp
func SubjectProtoToSdk ¶ added in v0.2.0
func SubjectSelectorLabelProtoToSdk ¶ added in v0.3.0
func SubjectSelectorLabelProtoToSdk(label *proto.SubjectLabelSelector) types.SubjectTemplateSelectorLabel
func SubjectTemplateProtoToSdk ¶ added in v0.3.0
func SubjectTemplateProtoToSdk(subjectTemplate *proto.SubjectTemplate) *types.SubjectTemplate
func SubjectTypeFromEnum ¶ added in v0.2.0
func SubjectTypeFromEnum(in proto.SubjectType) string
Types ¶
type GRPCApiHelperClient ¶ added in v0.0.13
type GRPCApiHelperClient struct {
// contains filtered or unexported fields
}
func (*GRPCApiHelperClient) CreateEvidence ¶ added in v0.2.0
func (*GRPCApiHelperClient) UpsertRiskTemplates ¶ added in v0.3.0
func (m *GRPCApiHelperClient) UpsertRiskTemplates(ctx context.Context, packageName string, riskTemplates []*proto.RiskTemplate) error
func (*GRPCApiHelperClient) UpsertSubjectTemplates ¶ added in v0.3.0
func (m *GRPCApiHelperClient) UpsertSubjectTemplates(ctx context.Context, subjectTemplates []*proto.SubjectTemplate) error
type GRPCApiHelperServer ¶ added in v0.0.13
type GRPCApiHelperServer struct {
// This is the real implementation
Impl ApiHelper
// contains filtered or unexported fields
}
func (*GRPCApiHelperServer) CreateEvidence ¶ added in v0.2.0
func (m *GRPCApiHelperServer) CreateEvidence(ctx context.Context, req *proto.CreateEvidenceRequest) (resp *proto.CreateEvidenceResponse, err error)
func (*GRPCApiHelperServer) SetImpl ¶ added in v0.3.0
func (m *GRPCApiHelperServer) SetImpl(impl ApiHelper)
func (*GRPCApiHelperServer) UpsertRiskTemplates ¶ added in v0.3.0
func (m *GRPCApiHelperServer) UpsertRiskTemplates(ctx context.Context, req *proto.UpsertRiskTemplatesRequest) (resp *proto.UpsertRiskTemplatesResponse, err error)
func (*GRPCApiHelperServer) UpsertSubjectTemplates ¶ added in v0.3.0
func (m *GRPCApiHelperServer) UpsertSubjectTemplates(ctx context.Context, req *proto.UpsertSubjectTemplatesRequest) (resp *proto.UpsertSubjectTemplatesResponse, err error)
type GRPCClient ¶
type GRPCClient struct {
// contains filtered or unexported fields
}
GRPCClient implements Runner over go-plugin gRPC.
func (*GRPCClient) Configure ¶
func (m *GRPCClient) Configure(request *proto.ConfigureRequest) (*proto.ConfigureResponse, error)
func (*GRPCClient) Eval ¶
func (m *GRPCClient) Eval(request *proto.EvalRequest, a ApiHelper) (*proto.EvalResponse, error)
func (*GRPCClient) Init ¶ added in v0.3.0
func (m *GRPCClient) Init(request *proto.InitRequest, a ApiHelper) (*proto.InitResponse, error)
type GRPCServer ¶
type GRPCServer struct {
Impl Runner
// contains filtered or unexported fields
}
func (*GRPCServer) Configure ¶
func (m *GRPCServer) Configure(ctx context.Context, req *proto.ConfigureRequest) (*proto.ConfigureResponse, error)
func (*GRPCServer) Eval ¶
func (m *GRPCServer) Eval(ctx context.Context, req *proto.EvalRequest) (*proto.EvalResponse, error)
func (*GRPCServer) Init ¶ added in v0.3.0
func (m *GRPCServer) Init(ctx context.Context, req *proto.InitRequest) (*proto.InitResponse, error)
type Runner ¶
type Runner interface {
Configure(request *proto.ConfigureRequest) (*proto.ConfigureResponse, error)
Eval(request *proto.EvalRequest, a ApiHelper) (*proto.EvalResponse, error)
}
type RunnerGRPCPlugin ¶
func (*RunnerGRPCPlugin) GRPCClient ¶
func (p *RunnerGRPCPlugin) GRPCClient(ctx context.Context, broker *plugin.GRPCBroker, c *grpc.ClientConn) (interface{}, error)
func (*RunnerGRPCPlugin) GRPCServer ¶
func (p *RunnerGRPCPlugin) GRPCServer(broker *plugin.GRPCBroker, s *grpc.Server) error
type RunnerV2 ¶ added in v0.3.0
type RunnerV2 interface {
Runner
Init(request *proto.InitRequest, a ApiHelper) (*proto.InitResponse, error)
}
type RunnerV2GRPCPlugin ¶ added in v0.3.0
func (*RunnerV2GRPCPlugin) GRPCClient ¶ added in v0.3.0
func (p *RunnerV2GRPCPlugin) GRPCClient(ctx context.Context, broker *plugin.GRPCBroker, c *grpc.ClientConn) (interface{}, error)
func (*RunnerV2GRPCPlugin) GRPCServer ¶ added in v0.3.0
func (p *RunnerV2GRPCPlugin) GRPCServer(broker *plugin.GRPCBroker, s *grpc.Server) error
Click to show internal directories.
Click to hide internal directories.