Documentation
¶
Index ¶
- Constants
- Variables
- func RegisterBrokerServiceServer(s grpc.ServiceRegistrar, srv BrokerServiceServer)
- type AgentInfo
- func (*AgentInfo) Descriptor() ([]byte, []int)deprecated
- func (x *AgentInfo) GetCertificate() string
- func (x *AgentInfo) GetExpiresAt() *timestamppb.Timestamp
- func (x *AgentInfo) GetHash() string
- func (x *AgentInfo) GetSocketPath() string
- func (*AgentInfo) ProtoMessage()
- func (x *AgentInfo) ProtoReflect() protoreflect.Message
- func (x *AgentInfo) Reset()
- func (x *AgentInfo) String() string
- type BrokerServiceClient
- type BrokerServiceServer
- type BrokerService_MatchClient
- type BrokerService_MatchServer
- type CertInfo
- func (*CertInfo) Descriptor() ([]byte, []int)deprecated
- func (x *CertInfo) GetCertificate() string
- func (x *CertInfo) GetExpiresAt() *timestamppb.Timestamp
- func (x *CertInfo) GetHostUsers() map[string]*StringList
- func (*CertInfo) ProtoMessage()
- func (x *CertInfo) ProtoReflect() protoreflect.Message
- func (x *CertInfo) Reset()
- func (x *CertInfo) String() string
- type Connection
- func (*Connection) Descriptor() ([]byte, []int)deprecated
- func (x *Connection) GetHash() string
- func (x *Connection) GetLocalHost() string
- func (x *Connection) GetPort() uint32
- func (x *Connection) GetProxyJump() string
- func (x *Connection) GetRemoteHost() string
- func (x *Connection) GetRemoteUser() string
- func (*Connection) ProtoMessage()
- func (x *Connection) ProtoReflect() protoreflect.Message
- func (x *Connection) Reset()
- func (x *Connection) String() string
- type InspectRequest
- type InspectResponse
- func (*InspectResponse) Descriptor() ([]byte, []int)deprecated
- func (x *InspectResponse) GetAgentSocketDir() string
- func (x *InspectResponse) GetAgents() []*AgentInfo
- func (x *InspectResponse) GetCertificates() []*CertInfo
- func (x *InspectResponse) GetDiscoveryPatterns() []string
- func (x *InspectResponse) GetSocketPath() string
- func (*InspectResponse) ProtoMessage()
- func (x *InspectResponse) ProtoReflect() protoreflect.Message
- func (x *InspectResponse) Reset()
- func (x *InspectResponse) String() string
- type MatchEvent
- func (*MatchEvent) Descriptor() ([]byte, []int)deprecated
- func (x *MatchEvent) GetEvent() isMatchEvent_Event
- func (x *MatchEvent) GetResult() *MatchResult
- func (x *MatchEvent) GetUserOutput() []byte
- func (*MatchEvent) ProtoMessage()
- func (x *MatchEvent) ProtoReflect() protoreflect.Message
- func (x *MatchEvent) Reset()
- func (x *MatchEvent) String() string
- type MatchEvent_Result
- type MatchEvent_UserOutput
- type MatchRequest
- type MatchResult
- type StringList
- type UnimplementedBrokerServiceServer
- type UnsafeBrokerServiceServer
Constants ¶
const ( BrokerService_Match_FullMethodName = "/epithet.broker.v1.BrokerService/Match" BrokerService_Inspect_FullMethodName = "/epithet.broker.v1.BrokerService/Inspect" )
Variables ¶
var BrokerService_ServiceDesc = grpc.ServiceDesc{ ServiceName: "epithet.broker.v1.BrokerService", HandlerType: (*BrokerServiceServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "Inspect", Handler: _BrokerService_Inspect_Handler, }, }, Streams: []grpc.StreamDesc{ { StreamName: "Match", Handler: _BrokerService_Match_Handler, ServerStreams: true, }, }, Metadata: "brokerv1/broker.proto", }
BrokerService_ServiceDesc is the grpc.ServiceDesc for BrokerService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
var File_brokerv1_broker_proto protoreflect.FileDescriptor
Functions ¶
func RegisterBrokerServiceServer ¶
func RegisterBrokerServiceServer(s grpc.ServiceRegistrar, srv BrokerServiceServer)
Types ¶
type AgentInfo ¶
type AgentInfo struct {
Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
SocketPath string `protobuf:"bytes,2,opt,name=socket_path,json=socketPath,proto3" json:"socket_path,omitempty"`
ExpiresAt *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
Certificate string `protobuf:"bytes,4,opt,name=certificate,proto3" json:"certificate,omitempty"`
// contains filtered or unexported fields
}
func (*AgentInfo) Descriptor
deprecated
func (*AgentInfo) GetCertificate ¶
func (*AgentInfo) GetExpiresAt ¶
func (x *AgentInfo) GetExpiresAt() *timestamppb.Timestamp
func (*AgentInfo) GetSocketPath ¶
func (*AgentInfo) ProtoMessage ¶
func (*AgentInfo) ProtoMessage()
func (*AgentInfo) ProtoReflect ¶
func (x *AgentInfo) ProtoReflect() protoreflect.Message
type BrokerServiceClient ¶
type BrokerServiceClient interface {
// Match checks if a connection should be allowed and streams auth stderr.
Match(ctx context.Context, in *MatchRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[MatchEvent], error)
// Inspect returns the current broker state.
Inspect(ctx context.Context, in *InspectRequest, opts ...grpc.CallOption) (*InspectResponse, error)
}
BrokerServiceClient is the client API for BrokerService 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 NewBrokerServiceClient ¶
func NewBrokerServiceClient(cc grpc.ClientConnInterface) BrokerServiceClient
type BrokerServiceServer ¶
type BrokerServiceServer interface {
// Match checks if a connection should be allowed and streams auth stderr.
Match(*MatchRequest, grpc.ServerStreamingServer[MatchEvent]) error
// Inspect returns the current broker state.
Inspect(context.Context, *InspectRequest) (*InspectResponse, error)
// contains filtered or unexported methods
}
BrokerServiceServer is the server API for BrokerService service. All implementations must embed UnimplementedBrokerServiceServer for forward compatibility.
type BrokerService_MatchClient ¶
type BrokerService_MatchClient = grpc.ServerStreamingClient[MatchEvent]
This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type BrokerService_MatchServer ¶
type BrokerService_MatchServer = grpc.ServerStreamingServer[MatchEvent]
This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type CertInfo ¶
type CertInfo struct {
Certificate string `protobuf:"bytes,1,opt,name=certificate,proto3" json:"certificate,omitempty"`
HostUsers map[string]*StringList `` /* 162-byte string literal not displayed */
ExpiresAt *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
// contains filtered or unexported fields
}
func (*CertInfo) Descriptor
deprecated
func (*CertInfo) GetCertificate ¶
func (*CertInfo) GetExpiresAt ¶
func (x *CertInfo) GetExpiresAt() *timestamppb.Timestamp
func (*CertInfo) GetHostUsers ¶
func (x *CertInfo) GetHostUsers() map[string]*StringList
func (*CertInfo) ProtoMessage ¶
func (*CertInfo) ProtoMessage()
func (*CertInfo) ProtoReflect ¶
func (x *CertInfo) ProtoReflect() protoreflect.Message
type Connection ¶
type Connection struct {
LocalHost string `protobuf:"bytes,1,opt,name=local_host,json=localHost,proto3" json:"local_host,omitempty"`
RemoteHost string `protobuf:"bytes,2,opt,name=remote_host,json=remoteHost,proto3" json:"remote_host,omitempty"`
RemoteUser string `protobuf:"bytes,3,opt,name=remote_user,json=remoteUser,proto3" json:"remote_user,omitempty"`
Port uint32 `protobuf:"varint,4,opt,name=port,proto3" json:"port,omitempty"`
ProxyJump string `protobuf:"bytes,5,opt,name=proxy_jump,json=proxyJump,proto3" json:"proxy_jump,omitempty"`
Hash string `protobuf:"bytes,6,opt,name=hash,proto3" json:"hash,omitempty"`
// contains filtered or unexported fields
}
Connection represents the complete tuple of SSH connection parameters.
func (*Connection) Descriptor
deprecated
func (*Connection) Descriptor() ([]byte, []int)
Deprecated: Use Connection.ProtoReflect.Descriptor instead.
func (*Connection) GetHash ¶
func (x *Connection) GetHash() string
func (*Connection) GetLocalHost ¶
func (x *Connection) GetLocalHost() string
func (*Connection) GetPort ¶
func (x *Connection) GetPort() uint32
func (*Connection) GetProxyJump ¶
func (x *Connection) GetProxyJump() string
func (*Connection) GetRemoteHost ¶
func (x *Connection) GetRemoteHost() string
func (*Connection) GetRemoteUser ¶
func (x *Connection) GetRemoteUser() string
func (*Connection) ProtoMessage ¶
func (*Connection) ProtoMessage()
func (*Connection) ProtoReflect ¶
func (x *Connection) ProtoReflect() protoreflect.Message
func (*Connection) Reset ¶
func (x *Connection) Reset()
func (*Connection) String ¶
func (x *Connection) String() string
type InspectRequest ¶
type InspectRequest struct {
// contains filtered or unexported fields
}
func (*InspectRequest) Descriptor
deprecated
func (*InspectRequest) Descriptor() ([]byte, []int)
Deprecated: Use InspectRequest.ProtoReflect.Descriptor instead.
func (*InspectRequest) ProtoMessage ¶
func (*InspectRequest) ProtoMessage()
func (*InspectRequest) ProtoReflect ¶
func (x *InspectRequest) ProtoReflect() protoreflect.Message
func (*InspectRequest) Reset ¶
func (x *InspectRequest) Reset()
func (*InspectRequest) String ¶
func (x *InspectRequest) String() string
type InspectResponse ¶
type InspectResponse struct {
SocketPath string `protobuf:"bytes,1,opt,name=socket_path,json=socketPath,proto3" json:"socket_path,omitempty"`
AgentSocketDir string `protobuf:"bytes,2,opt,name=agent_socket_dir,json=agentSocketDir,proto3" json:"agent_socket_dir,omitempty"`
DiscoveryPatterns []string `protobuf:"bytes,3,rep,name=discovery_patterns,json=discoveryPatterns,proto3" json:"discovery_patterns,omitempty"`
Agents []*AgentInfo `protobuf:"bytes,4,rep,name=agents,proto3" json:"agents,omitempty"`
Certificates []*CertInfo `protobuf:"bytes,5,rep,name=certificates,proto3" json:"certificates,omitempty"`
// contains filtered or unexported fields
}
func (*InspectResponse) Descriptor
deprecated
func (*InspectResponse) Descriptor() ([]byte, []int)
Deprecated: Use InspectResponse.ProtoReflect.Descriptor instead.
func (*InspectResponse) GetAgentSocketDir ¶
func (x *InspectResponse) GetAgentSocketDir() string
func (*InspectResponse) GetAgents ¶
func (x *InspectResponse) GetAgents() []*AgentInfo
func (*InspectResponse) GetCertificates ¶
func (x *InspectResponse) GetCertificates() []*CertInfo
func (*InspectResponse) GetDiscoveryPatterns ¶
func (x *InspectResponse) GetDiscoveryPatterns() []string
func (*InspectResponse) GetSocketPath ¶
func (x *InspectResponse) GetSocketPath() string
func (*InspectResponse) ProtoMessage ¶
func (*InspectResponse) ProtoMessage()
func (*InspectResponse) ProtoReflect ¶
func (x *InspectResponse) ProtoReflect() protoreflect.Message
func (*InspectResponse) Reset ¶
func (x *InspectResponse) Reset()
func (*InspectResponse) String ¶
func (x *InspectResponse) String() string
type MatchEvent ¶
type MatchEvent struct {
// Types that are valid to be assigned to Event:
//
// *MatchEvent_UserOutput
// *MatchEvent_Result
Event isMatchEvent_Event `protobuf_oneof:"event"`
// contains filtered or unexported fields
}
MatchEvent is streamed during Match - user output chunks then final result.
func (*MatchEvent) Descriptor
deprecated
func (*MatchEvent) Descriptor() ([]byte, []int)
Deprecated: Use MatchEvent.ProtoReflect.Descriptor instead.
func (*MatchEvent) GetEvent ¶
func (x *MatchEvent) GetEvent() isMatchEvent_Event
func (*MatchEvent) GetResult ¶
func (x *MatchEvent) GetResult() *MatchResult
func (*MatchEvent) GetUserOutput ¶ added in v0.7.0
func (x *MatchEvent) GetUserOutput() []byte
func (*MatchEvent) ProtoMessage ¶
func (*MatchEvent) ProtoMessage()
func (*MatchEvent) ProtoReflect ¶
func (x *MatchEvent) ProtoReflect() protoreflect.Message
func (*MatchEvent) Reset ¶
func (x *MatchEvent) Reset()
func (*MatchEvent) String ¶
func (x *MatchEvent) String() string
type MatchEvent_Result ¶
type MatchEvent_Result struct {
Result *MatchResult `protobuf:"bytes,2,opt,name=result,proto3,oneof"` // Final result (exactly one, last)
}
type MatchEvent_UserOutput ¶ added in v0.7.0
type MatchEvent_UserOutput struct {
UserOutput []byte `protobuf:"bytes,1,opt,name=user_output,json=userOutput,proto3,oneof"` // Auth plugin user-visible output (fd 4)
}
type MatchRequest ¶
type MatchRequest struct {
Connection *Connection `protobuf:"bytes,1,opt,name=connection,proto3" json:"connection,omitempty"`
// contains filtered or unexported fields
}
func (*MatchRequest) Descriptor
deprecated
func (*MatchRequest) Descriptor() ([]byte, []int)
Deprecated: Use MatchRequest.ProtoReflect.Descriptor instead.
func (*MatchRequest) GetConnection ¶
func (x *MatchRequest) GetConnection() *Connection
func (*MatchRequest) ProtoMessage ¶
func (*MatchRequest) ProtoMessage()
func (*MatchRequest) ProtoReflect ¶
func (x *MatchRequest) ProtoReflect() protoreflect.Message
func (*MatchRequest) Reset ¶
func (x *MatchRequest) Reset()
func (*MatchRequest) String ¶
func (x *MatchRequest) String() string
type MatchResult ¶
type MatchResult struct {
Allow bool `protobuf:"varint,1,opt,name=allow,proto3" json:"allow,omitempty"`
Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
// contains filtered or unexported fields
}
func (*MatchResult) Descriptor
deprecated
func (*MatchResult) Descriptor() ([]byte, []int)
Deprecated: Use MatchResult.ProtoReflect.Descriptor instead.
func (*MatchResult) GetAllow ¶
func (x *MatchResult) GetAllow() bool
func (*MatchResult) GetError ¶
func (x *MatchResult) GetError() string
func (*MatchResult) ProtoMessage ¶
func (*MatchResult) ProtoMessage()
func (*MatchResult) ProtoReflect ¶
func (x *MatchResult) ProtoReflect() protoreflect.Message
func (*MatchResult) Reset ¶
func (x *MatchResult) Reset()
func (*MatchResult) String ¶
func (x *MatchResult) String() string
type StringList ¶
type StringList struct {
Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
// contains filtered or unexported fields
}
StringList is needed because protobuf map values cannot be repeated.
func (*StringList) Descriptor
deprecated
func (*StringList) Descriptor() ([]byte, []int)
Deprecated: Use StringList.ProtoReflect.Descriptor instead.
func (*StringList) GetValues ¶
func (x *StringList) GetValues() []string
func (*StringList) ProtoMessage ¶
func (*StringList) ProtoMessage()
func (*StringList) ProtoReflect ¶
func (x *StringList) ProtoReflect() protoreflect.Message
func (*StringList) Reset ¶
func (x *StringList) Reset()
func (*StringList) String ¶
func (x *StringList) String() string
type UnimplementedBrokerServiceServer ¶
type UnimplementedBrokerServiceServer struct{}
UnimplementedBrokerServiceServer must be embedded to have forward compatible implementations.
NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.
func (UnimplementedBrokerServiceServer) Inspect ¶
func (UnimplementedBrokerServiceServer) Inspect(context.Context, *InspectRequest) (*InspectResponse, error)
func (UnimplementedBrokerServiceServer) Match ¶
func (UnimplementedBrokerServiceServer) Match(*MatchRequest, grpc.ServerStreamingServer[MatchEvent]) error
type UnsafeBrokerServiceServer ¶
type UnsafeBrokerServiceServer interface {
// contains filtered or unexported methods
}
UnsafeBrokerServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to BrokerServiceServer will result in compilation errors.