nodeattestor

package
v0.0.0-...-8f69376 Latest Latest
Warning

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

Go to latest
Published: Dec 20, 2018 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Handshake = go_plugin.HandshakeConfig{
	ProtocolVersion:  1,
	MagicCookieKey:   "NodeAttestor",
	MagicCookieValue: "NodeAttestor",
}

Functions

func RegisterNodeAttestorServer

func RegisterNodeAttestorServer(s *grpc.Server, srv NodeAttestorServer)

Types

type AttestRequest

type AttestRequest struct {
	// * A type which contains attestation data for specific platform.
	AttestationData *common.AttestationData `protobuf:"bytes,1,opt,name=attestationData,proto3" json:"attestationData,omitempty"`
	// * Is true if the Base SPIFFE ID is present in the Attested Node table.
	AttestedBefore bool `protobuf:"varint,2,opt,name=attestedBefore,proto3" json:"attestedBefore,omitempty"`
	// * Challenge response
	Response             []byte   `protobuf:"bytes,3,opt,name=response,proto3" json:"response,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

* Represents a request to attest a node.

func (*AttestRequest) Descriptor

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

func (*AttestRequest) GetAttestationData

func (m *AttestRequest) GetAttestationData() *common.AttestationData

func (*AttestRequest) GetAttestedBefore

func (m *AttestRequest) GetAttestedBefore() bool

func (*AttestRequest) GetResponse

func (m *AttestRequest) GetResponse() []byte

func (*AttestRequest) ProtoMessage

func (*AttestRequest) ProtoMessage()

func (*AttestRequest) Reset

func (m *AttestRequest) Reset()

func (*AttestRequest) String

func (m *AttestRequest) String() string

func (*AttestRequest) XXX_DiscardUnknown

func (m *AttestRequest) XXX_DiscardUnknown()

func (*AttestRequest) XXX_Marshal

func (m *AttestRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AttestRequest) XXX_Merge

func (dst *AttestRequest) XXX_Merge(src proto.Message)

func (*AttestRequest) XXX_Size

func (m *AttestRequest) XXX_Size() int

func (*AttestRequest) XXX_Unmarshal

func (m *AttestRequest) XXX_Unmarshal(b []byte) error

type AttestResponse

type AttestResponse struct {
	// * True/False
	Valid bool `protobuf:"varint,1,opt,name=valid,proto3" json:"valid,omitempty"`
	// * Used by the Server to validate the SPIFFE Id in the Certificate signing request.
	BaseSPIFFEID string `protobuf:"bytes,2,opt,name=baseSPIFFEID,proto3" json:"baseSPIFFEID,omitempty"`
	// * Challenge required for attestation
	Challenge []byte `protobuf:"bytes,3,opt,name=challenge,proto3" json:"challenge,omitempty"`
	// * Optional list of selectors
	Selectors            []*common.Selector `protobuf:"bytes,4,rep,name=selectors,proto3" json:"selectors,omitempty"`
	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
	XXX_unrecognized     []byte             `json:"-"`
	XXX_sizecache        int32              `json:"-"`
}

* Represents a response when attesting a node.

func (*AttestResponse) Descriptor

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

func (*AttestResponse) GetBaseSPIFFEID

func (m *AttestResponse) GetBaseSPIFFEID() string

func (*AttestResponse) GetChallenge

func (m *AttestResponse) GetChallenge() []byte

func (*AttestResponse) GetSelectors

func (m *AttestResponse) GetSelectors() []*common.Selector

func (*AttestResponse) GetValid

func (m *AttestResponse) GetValid() bool

func (*AttestResponse) ProtoMessage

func (*AttestResponse) ProtoMessage()

func (*AttestResponse) Reset

func (m *AttestResponse) Reset()

func (*AttestResponse) String

func (m *AttestResponse) String() string

func (*AttestResponse) XXX_DiscardUnknown

func (m *AttestResponse) XXX_DiscardUnknown()

func (*AttestResponse) XXX_Marshal

func (m *AttestResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AttestResponse) XXX_Merge

func (dst *AttestResponse) XXX_Merge(src proto.Message)

func (*AttestResponse) XXX_Size

func (m *AttestResponse) XXX_Size() int

func (*AttestResponse) XXX_Unmarshal

func (m *AttestResponse) XXX_Unmarshal(b []byte) error

type Attest_PluginStream

type Attest_PluginStream interface {
	Context() context.Context
	Send(*AttestResponse) error
	Recv() (*AttestRequest, error)
}

type Attest_Stream

type Attest_Stream interface {
	Context() context.Context
	Send(*AttestRequest) error
	Recv() (*AttestResponse, error)
	CloseSend() error
}

type AttestationData

type AttestationData = common.AttestationData

AttestationData from public import github.com/spiffe/spire/proto/common/common.proto

type BuiltIn

type BuiltIn struct {
	// contains filtered or unexported fields
}

func NewBuiltIn

func NewBuiltIn(plugin Plugin) *BuiltIn

func (BuiltIn) Attest

func (b BuiltIn) Attest(ctx context.Context) (Attest_Stream, error)

func (BuiltIn) Configure

func (BuiltIn) GetPluginInfo

type Bundle

type Bundle = common.Bundle

Bundle from public import github.com/spiffe/spire/proto/common/common.proto

type Certificate

type Certificate = common.Certificate

Certificate from public import github.com/spiffe/spire/proto/common/common.proto

type ConfigureRequest

type ConfigureRequest = plugin.ConfigureRequest

ConfigureRequest from public import github.com/spiffe/spire/proto/common/plugin/plugin.proto

type ConfigureRequest_GlobalConfig

type ConfigureRequest_GlobalConfig = plugin.ConfigureRequest_GlobalConfig

GlobalConfig from public import github.com/spiffe/spire/proto/common/plugin/plugin.proto

type ConfigureResponse

type ConfigureResponse = plugin.ConfigureResponse

ConfigureResponse from public import github.com/spiffe/spire/proto/common/plugin/plugin.proto

type Empty

type Empty = common.Empty

Empty from public import github.com/spiffe/spire/proto/common/common.proto

type GRPCClient

type GRPCClient struct {
	// contains filtered or unexported fields
}

func (*GRPCClient) Attest

func (c *GRPCClient) Attest(ctx context.Context) (Attest_Stream, error)

func (*GRPCClient) Configure

func (*GRPCClient) GetPluginInfo

type GRPCPlugin

type GRPCPlugin struct {
	ServerImpl NodeAttestorServer
}

func (GRPCPlugin) Client

func (p GRPCPlugin) Client(b *go_plugin.MuxBroker, c *rpc.Client) (interface{}, error)

func (GRPCPlugin) GRPCClient

func (p GRPCPlugin) GRPCClient(c *grpc.ClientConn) (interface{}, error)

func (GRPCPlugin) GRPCServer

func (p GRPCPlugin) GRPCServer(s *grpc.Server) error

func (GRPCPlugin) Server

func (p GRPCPlugin) Server(*go_plugin.MuxBroker) (interface{}, error)

type GRPCServer

type GRPCServer struct {
	Plugin Plugin
}

func (*GRPCServer) Attest

func (s *GRPCServer) Attest(stream NodeAttestor_AttestServer) error

func (*GRPCServer) Configure

func (*GRPCServer) GetPluginInfo

type GetPluginInfoRequest

type GetPluginInfoRequest = plugin.GetPluginInfoRequest

GetPluginInfoRequest from public import github.com/spiffe/spire/proto/common/plugin/plugin.proto

type GetPluginInfoResponse

type GetPluginInfoResponse = plugin.GetPluginInfoResponse

GetPluginInfoResponse from public import github.com/spiffe/spire/proto/common/plugin/plugin.proto

type NodeAttestor

type NodeAttestor interface {
	Attest(context.Context) (Attest_Stream, error)
}

NodeAttestor is the interface used by all non-catalog components.

type NodeAttestorClient

type NodeAttestorClient interface {
	// * Attesta a node.
	Attest(ctx context.Context, opts ...grpc.CallOption) (NodeAttestor_AttestClient, error)
	// * Responsible for configuration of the plugin.
	Configure(ctx context.Context, in *plugin.ConfigureRequest, opts ...grpc.CallOption) (*plugin.ConfigureResponse, error)
	// * Returns the  version and related metadata of the installed plugin.
	GetPluginInfo(ctx context.Context, in *plugin.GetPluginInfoRequest, opts ...grpc.CallOption) (*plugin.GetPluginInfoResponse, error)
}

NodeAttestorClient is the client API for NodeAttestor service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewNodeAttestorClient

func NewNodeAttestorClient(cc *grpc.ClientConn) NodeAttestorClient

type NodeAttestorServer

type NodeAttestorServer interface {
	// * Attesta a node.
	Attest(NodeAttestor_AttestServer) error
	// * Responsible for configuration of the plugin.
	Configure(context.Context, *plugin.ConfigureRequest) (*plugin.ConfigureResponse, error)
	// * Returns the  version and related metadata of the installed plugin.
	GetPluginInfo(context.Context, *plugin.GetPluginInfoRequest) (*plugin.GetPluginInfoResponse, error)
}

NodeAttestorServer is the server API for NodeAttestor service.

type NodeAttestor_AttestClient

type NodeAttestor_AttestClient interface {
	Send(*AttestRequest) error
	Recv() (*AttestResponse, error)
	grpc.ClientStream
}

type NodeAttestor_AttestServer

type NodeAttestor_AttestServer interface {
	Send(*AttestResponse) error
	Recv() (*AttestRequest, error)
	grpc.ServerStream
}

type Plugin

Plugin is the interface implemented by plugin implementations

type PublicKey

type PublicKey = common.PublicKey

PublicKey from public import github.com/spiffe/spire/proto/common/common.proto

type RegistrationEntries

type RegistrationEntries = common.RegistrationEntries

RegistrationEntries from public import github.com/spiffe/spire/proto/common/common.proto

type RegistrationEntry

type RegistrationEntry = common.RegistrationEntry

RegistrationEntry from public import github.com/spiffe/spire/proto/common/common.proto

type Selector

type Selector = common.Selector

Selector from public import github.com/spiffe/spire/proto/common/common.proto

type Selectors

type Selectors = common.Selectors

Selectors from public import github.com/spiffe/spire/proto/common/common.proto

Jump to

Keyboard shortcuts

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