Documentation
¶
Index ¶
- Constants
- Variables
- func ActivitiesProtoToSdk(activities []*proto.Activity) *[]types.Activity
- func ActivityProtoToSdk(activity *proto.Activity) *types.Activity
- func ComponentReferenceProtoToSdk(reference *proto.ComponentReference) *types.ComponentReference
- func ComponentReferencesProtoToSdk(activities []*proto.ComponentReference) *[]types.ComponentReference
- func ControlReferenceProtoToSdk(control *proto.ControlReference) *types.ControlReference
- func ControlReferencesProtoToSdk(controls []*proto.ControlReference) *[]types.ControlReference
- func FindingProtoToSdk(finding *proto.Finding) *types.Finding
- func FindingStatusProtoToSdk(status *proto.FindingStatus) *types.FindingStatus
- func FindingsProtoToSdk(findings []*proto.Finding) *[]types.Finding
- func LinkProtoToSdk(link *proto.Link) *types.Link
- func LinksProtoToSdk(links []*proto.Link) *[]types.Link
- func NewApiHelper(logger hclog.Logger, client *sdk.Client, agentLabels map[string]string) *apiHelper
- func ObservationProtoToSdk(observation *proto.Observation) *types.Observation
- func ObservationsProtoToSdk(observations []*proto.Observation) *[]types.Observation
- func OriginActorProtoToSdk(actor *proto.OriginActor) *types.OriginActor
- func OriginActorsProtoToSdk(actors []*proto.OriginActor) *[]types.OriginActor
- func OriginProtoToSdk(origin *proto.Origin) *types.Origin
- func OriginsProtoToSdk(origins []*proto.Origin) *[]types.Origin
- func PropertiesProtoToSdk(properties []*proto.Property) *[]types.Property
- func PropertyProtoToSdk(property *proto.Property) *types.Property
- func RelatedObservationProtoToSdk(observation *proto.RelatedObservation) *types.RelatedObservation
- func RelatedObservationsProtoToSdk(observations []*proto.RelatedObservation) *[]types.RelatedObservation
- func RelevantEvidenceProtoToSdk(evidence *proto.RelevantEvidence) *types.RelevantEvidence
- func RelevantEvidencesProtoToSdk(evidences []*proto.RelevantEvidence) *[]types.RelevantEvidence
- func RiskProtoToSdk(risk *proto.RiskReference) *types.RiskReference
- func RisksProtoToSdk(risks []*proto.RiskReference) *[]types.RiskReference
- func StepProtoToSdk(step *proto.Step) *types.Step
- func StepsProtoToSdk(steps []*proto.Step) *[]types.Step
- func SubjectReferenceProtoToSdk(subject *proto.SubjectReference) *types.SubjectReference
- func SubjectReferencesProtoToSdk(subjects []*proto.SubjectReference) *[]types.SubjectReference
- func ThreatIDProtoToSdk(threatId *proto.ThreatId) *types.ThreatId
- func ThreatIDsProtoToSdk(threatIds []*proto.ThreatId) *[]types.ThreatId
- type ApiHelper
- type GRPCApiHelperClient
- type GRPCApiHelperServer
- func (m *GRPCApiHelperServer) CreateFindings(ctx context.Context, req *proto.CreateFindingsRequest) (resp *proto.CreateFindingsResponse, err error)
- func (m *GRPCApiHelperServer) CreateObservations(ctx context.Context, req *proto.CreateObservationsRequest) (resp *proto.CreateObservationsResponse, err error)
- type GRPCClient
- type GRPCServer
- type Runner
- type RunnerGRPCPlugin
Constants ¶
View Source
const ( FindingTargetStatusSatisfied = "satisfied" FindingTargetStatusNotSatisfied = "not satisfied" )
Constants used in plugins for statusses which map to OSCAL due to int requirements of GRPC
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 ActivitiesProtoToSdk ¶ added in v0.1.0
func ActivityProtoToSdk ¶ added in v0.1.0
func ComponentReferenceProtoToSdk ¶ added in v0.1.0
func ComponentReferenceProtoToSdk(reference *proto.ComponentReference) *types.ComponentReference
func ComponentReferencesProtoToSdk ¶ added in v0.1.0
func ComponentReferencesProtoToSdk(activities []*proto.ComponentReference) *[]types.ComponentReference
func ControlReferenceProtoToSdk ¶ added in v0.1.0
func ControlReferenceProtoToSdk(control *proto.ControlReference) *types.ControlReference
func ControlReferencesProtoToSdk ¶ added in v0.1.0
func ControlReferencesProtoToSdk(controls []*proto.ControlReference) *[]types.ControlReference
func FindingProtoToSdk ¶ added in v0.1.0
func FindingStatusProtoToSdk ¶ added in v0.1.0
func FindingStatusProtoToSdk(status *proto.FindingStatus) *types.FindingStatus
func FindingsProtoToSdk ¶ added in v0.1.0
func NewApiHelper ¶ added in v0.1.0
func ObservationProtoToSdk ¶ added in v0.1.0
func ObservationProtoToSdk(observation *proto.Observation) *types.Observation
func ObservationsProtoToSdk ¶ added in v0.1.0
func ObservationsProtoToSdk(observations []*proto.Observation) *[]types.Observation
func OriginActorProtoToSdk ¶ added in v0.1.0
func OriginActorProtoToSdk(actor *proto.OriginActor) *types.OriginActor
func OriginActorsProtoToSdk ¶ added in v0.1.0
func OriginActorsProtoToSdk(actors []*proto.OriginActor) *[]types.OriginActor
func OriginsProtoToSdk ¶ added in v0.1.0
func PropertiesProtoToSdk ¶ added in v0.1.0
func PropertyProtoToSdk ¶ added in v0.1.0
func RelatedObservationProtoToSdk ¶ added in v0.1.0
func RelatedObservationProtoToSdk(observation *proto.RelatedObservation) *types.RelatedObservation
func RelatedObservationsProtoToSdk ¶ added in v0.1.0
func RelatedObservationsProtoToSdk(observations []*proto.RelatedObservation) *[]types.RelatedObservation
func RelevantEvidenceProtoToSdk ¶ added in v0.1.0
func RelevantEvidenceProtoToSdk(evidence *proto.RelevantEvidence) *types.RelevantEvidence
func RelevantEvidencesProtoToSdk ¶ added in v0.1.0
func RelevantEvidencesProtoToSdk(evidences []*proto.RelevantEvidence) *[]types.RelevantEvidence
func RiskProtoToSdk ¶ added in v0.1.0
func RiskProtoToSdk(risk *proto.RiskReference) *types.RiskReference
func RisksProtoToSdk ¶ added in v0.1.0
func RisksProtoToSdk(risks []*proto.RiskReference) *[]types.RiskReference
func SubjectReferenceProtoToSdk ¶ added in v0.1.0
func SubjectReferenceProtoToSdk(subject *proto.SubjectReference) *types.SubjectReference
func SubjectReferencesProtoToSdk ¶ added in v0.1.0
func SubjectReferencesProtoToSdk(subjects []*proto.SubjectReference) *[]types.SubjectReference
func ThreatIDProtoToSdk ¶ added in v0.1.0
Types ¶
type GRPCApiHelperClient ¶ added in v0.0.13
type GRPCApiHelperClient struct {
// contains filtered or unexported fields
}
func (*GRPCApiHelperClient) CreateFindings ¶ added in v0.1.1
func (*GRPCApiHelperClient) CreateObservations ¶ added in v0.1.1
func (m *GRPCApiHelperClient) CreateObservations(ctx context.Context, observations []*proto.Observation) error
type GRPCApiHelperServer ¶ added in v0.0.13
type GRPCApiHelperServer struct {
// This is the real implementation
Impl ApiHelper
}
func (*GRPCApiHelperServer) CreateFindings ¶ added in v0.1.1
func (m *GRPCApiHelperServer) CreateFindings(ctx context.Context, req *proto.CreateFindingsRequest) (resp *proto.CreateFindingsResponse, err error)
func (*GRPCApiHelperServer) CreateObservations ¶ added in v0.1.1
func (m *GRPCApiHelperServer) CreateObservations(ctx context.Context, req *proto.CreateObservationsRequest) (resp *proto.CreateObservationsResponse, err error)
type GRPCClient ¶
type GRPCClient struct {
// contains filtered or unexported fields
}
GRPCClient is an implementation of KV that talks over RPC.
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)
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)
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
Click to show internal directories.
Click to hide internal directories.