Documentation ¶
Index ¶
- Variables
- func RegisterNodeAttestorServer(s *grpc.Server, srv NodeAttestorServer)
- type AttestRequest
- func (*AttestRequest) Descriptor() ([]byte, []int)
- func (m *AttestRequest) GetAttestationData() *common.AttestationData
- func (m *AttestRequest) GetAttestedBefore() bool
- func (m *AttestRequest) GetResponse() []byte
- func (*AttestRequest) ProtoMessage()
- func (m *AttestRequest) Reset()
- func (m *AttestRequest) String() string
- func (m *AttestRequest) XXX_DiscardUnknown()
- func (m *AttestRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *AttestRequest) XXX_Merge(src proto.Message)
- func (m *AttestRequest) XXX_Size() int
- func (m *AttestRequest) XXX_Unmarshal(b []byte) error
- type AttestResponse
- func (*AttestResponse) Descriptor() ([]byte, []int)
- func (m *AttestResponse) GetBaseSPIFFEID() string
- func (m *AttestResponse) GetChallenge() []byte
- func (m *AttestResponse) GetSelectors() []*common.Selector
- func (m *AttestResponse) GetValid() bool
- func (*AttestResponse) ProtoMessage()
- func (m *AttestResponse) Reset()
- func (m *AttestResponse) String() string
- func (m *AttestResponse) XXX_DiscardUnknown()
- func (m *AttestResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *AttestResponse) XXX_Merge(src proto.Message)
- func (m *AttestResponse) XXX_Size() int
- func (m *AttestResponse) XXX_Unmarshal(b []byte) error
- type Attest_PluginStream
- type Attest_Stream
- type AttestationData
- type BuiltIn
- func (b BuiltIn) Attest(ctx context.Context) (Attest_Stream, error)
- func (b BuiltIn) Configure(ctx context.Context, req *plugin.ConfigureRequest) (*plugin.ConfigureResponse, error)
- func (b BuiltIn) GetPluginInfo(ctx context.Context, req *plugin.GetPluginInfoRequest) (*plugin.GetPluginInfoResponse, error)
- type Bundle
- type Certificate
- type ConfigureRequest
- type ConfigureRequest_GlobalConfig
- type ConfigureResponse
- type Empty
- type GRPCClient
- func (c *GRPCClient) Attest(ctx context.Context) (Attest_Stream, error)
- func (c *GRPCClient) Configure(ctx context.Context, req *plugin.ConfigureRequest) (*plugin.ConfigureResponse, error)
- func (c *GRPCClient) GetPluginInfo(ctx context.Context, req *plugin.GetPluginInfoRequest) (*plugin.GetPluginInfoResponse, error)
- type GRPCPlugin
- type GRPCServer
- func (s *GRPCServer) Attest(stream NodeAttestor_AttestServer) error
- func (s *GRPCServer) Configure(ctx context.Context, req *plugin.ConfigureRequest) (*plugin.ConfigureResponse, error)
- func (s *GRPCServer) GetPluginInfo(ctx context.Context, req *plugin.GetPluginInfoRequest) (*plugin.GetPluginInfoResponse, error)
- type GetPluginInfoRequest
- type GetPluginInfoResponse
- type NodeAttestor
- type NodeAttestorClient
- type NodeAttestorServer
- type NodeAttestor_AttestClient
- type NodeAttestor_AttestServer
- type Plugin
- type PublicKey
- type RegistrationEntries
- type RegistrationEntry
- type Selector
- type Selectors
Constants ¶
This section is empty.
Variables ¶
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 (BuiltIn) Configure ¶
func (b BuiltIn) Configure(ctx context.Context, req *plugin.ConfigureRequest) (*plugin.ConfigureResponse, error)
func (BuiltIn) GetPluginInfo ¶
func (b BuiltIn) GetPluginInfo(ctx context.Context, req *plugin.GetPluginInfoRequest) (*plugin.GetPluginInfoResponse, error)
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 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 (c *GRPCClient) Configure(ctx context.Context, req *plugin.ConfigureRequest) (*plugin.ConfigureResponse, error)
func (*GRPCClient) GetPluginInfo ¶
func (c *GRPCClient) GetPluginInfo(ctx context.Context, req *plugin.GetPluginInfoRequest) (*plugin.GetPluginInfoResponse, error)
type GRPCPlugin ¶
type GRPCPlugin struct {
ServerImpl NodeAttestorServer
}
func (GRPCPlugin) GRPCClient ¶
func (p GRPCPlugin) GRPCClient(c *grpc.ClientConn) (interface{}, error)
func (GRPCPlugin) GRPCServer ¶
func (p GRPCPlugin) GRPCServer(s *grpc.Server) error
type GRPCServer ¶
type GRPCServer struct {
Plugin Plugin
}
func (*GRPCServer) Attest ¶
func (s *GRPCServer) Attest(stream NodeAttestor_AttestServer) error
func (*GRPCServer) Configure ¶
func (s *GRPCServer) Configure(ctx context.Context, req *plugin.ConfigureRequest) (*plugin.ConfigureResponse, error)
func (*GRPCServer) GetPluginInfo ¶
func (s *GRPCServer) GetPluginInfo(ctx context.Context, req *plugin.GetPluginInfoRequest) (*plugin.GetPluginInfoResponse, error)
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 ¶
type Plugin interface { Attest(Attest_PluginStream) error Configure(context.Context, *plugin.ConfigureRequest) (*plugin.ConfigureResponse, error) GetPluginInfo(context.Context, *plugin.GetPluginInfoRequest) (*plugin.GetPluginInfoResponse, error) }
Plugin is the interface implemented by plugin implementations
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