Documentation
¶
Overview ¶
Package v1 is a reverse proxy.
It translates gRPC into RESTful JSON APIs.
Index ¶
- Constants
- Variables
- func RegisterProxyServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error
- func RegisterProxyServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client ProxyServiceClient) error
- func RegisterProxyServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, ...) (err error)
- func RegisterProxyServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server ProxyServiceServer) error
- func RegisterProxyServiceServer(s grpc.ServiceRegistrar, srv ProxyServiceServer)
- type HTTPRequest
- func (*HTTPRequest) Descriptor() ([]byte, []int)deprecated
- func (x *HTTPRequest) GetBody() []byte
- func (x *HTTPRequest) GetHeaders() map[string]*StringValues
- func (x *HTTPRequest) GetMethod() string
- func (x *HTTPRequest) GetUrl() string
- func (*HTTPRequest) ProtoMessage()
- func (x *HTTPRequest) ProtoReflect() protoreflect.Message
- func (x *HTTPRequest) Reset()
- func (x *HTTPRequest) String() string
- type HTTPResponse
- func (*HTTPResponse) Descriptor() ([]byte, []int)deprecated
- func (x *HTTPResponse) GetBody() []byte
- func (x *HTTPResponse) GetHeaders() map[string]*StringValues
- func (x *HTTPResponse) GetStatusCode() int32
- func (*HTTPResponse) ProtoMessage()
- func (x *HTTPResponse) ProtoReflect() protoreflect.Message
- func (x *HTTPResponse) Reset()
- func (x *HTTPResponse) String() string
- type LDAPSearchRequest
- type LDAPSearchResponse
- func (*LDAPSearchResponse) Descriptor() ([]byte, []int)deprecated
- func (x *LDAPSearchResponse) GetError() string
- func (x *LDAPSearchResponse) GetResponse() string
- func (*LDAPSearchResponse) ProtoMessage()
- func (x *LDAPSearchResponse) ProtoReflect() protoreflect.Message
- func (x *LDAPSearchResponse) Reset()
- func (x *LDAPSearchResponse) String() string
- type ProxyRequestMessage
- func (*ProxyRequestMessage) Descriptor() ([]byte, []int)deprecated
- func (x *ProxyRequestMessage) GetClientId() string
- func (x *ProxyRequestMessage) GetConnectorId() string
- func (x *ProxyRequestMessage) GetRequest() *Request
- func (x *ProxyRequestMessage) GetTenantId() string
- func (*ProxyRequestMessage) ProtoMessage()
- func (x *ProxyRequestMessage) ProtoReflect() protoreflect.Message
- func (x *ProxyRequestMessage) Reset()
- func (x *ProxyRequestMessage) String() string
- type ProxyServiceClient
- type ProxyServiceServer
- type Request
- func (*Request) Descriptor() ([]byte, []int)deprecated
- func (x *Request) GetHttpRequest() *HTTPRequest
- func (x *Request) GetLdapSearchRequest() *LDAPSearchRequest
- func (x *Request) GetRequestType() isRequest_RequestType
- func (x *Request) GetSqlQueryReq() *SQLQueryRequest
- func (*Request) ProtoMessage()
- func (x *Request) ProtoReflect() protoreflect.Message
- func (x *Request) Reset()
- func (x *Request) String() string
- type Request_HttpRequest
- type Request_LdapSearchRequest
- type Request_SqlQueryReq
- type Response
- func (*Response) Descriptor() ([]byte, []int)deprecated
- func (x *Response) GetError() string
- func (x *Response) GetHttpResponse() *HTTPResponse
- func (x *Response) GetLdapSearchResponse() *LDAPSearchResponse
- func (x *Response) GetResponseType() isResponse_ResponseType
- func (x *Response) GetSqlQueryResponse() *SQLQueryResponse
- func (*Response) ProtoMessage()
- func (x *Response) ProtoReflect() protoreflect.Message
- func (x *Response) Reset()
- func (x *Response) String() string
- type Response_HttpResponse
- type Response_LdapSearchResponse
- type Response_SqlQueryResponse
- type SQLQueryRequest
- type SQLQueryResponse
- func (*SQLQueryResponse) Descriptor() ([]byte, []int)deprecated
- func (x *SQLQueryResponse) GetError() string
- func (x *SQLQueryResponse) GetResponse() string
- func (*SQLQueryResponse) ProtoMessage()
- func (x *SQLQueryResponse) ProtoReflect() protoreflect.Message
- func (x *SQLQueryResponse) Reset()
- func (x *SQLQueryResponse) String() string
- type StringValues
- type UnimplementedProxyServiceServer
- type UnsafeProxyServiceServer
Constants ¶
const (
ProxyService_ProxyRequest_FullMethodName = "/sgnl.grpc_proxy.v1.ProxyService/ProxyRequest"
)
Variables ¶
var File_proto_grpc_proxy_v1_grpc_proxy_proto protoreflect.FileDescriptor
var File_proto_grpc_proxy_v1_http_proto protoreflect.FileDescriptor
var File_proto_grpc_proxy_v1_ldap_proto protoreflect.FileDescriptor
var File_proto_grpc_proxy_v1_sql_proto protoreflect.FileDescriptor
var ProxyService_ServiceDesc = grpc.ServiceDesc{ ServiceName: "sgnl.grpc_proxy.v1.ProxyService", HandlerType: (*ProxyServiceServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "ProxyRequest", Handler: _ProxyService_ProxyRequest_Handler, }, }, Streams: []grpc.StreamDesc{}, Metadata: "proto/grpc_proxy/v1/grpc_proxy.proto", }
ProxyService_ServiceDesc is the grpc.ServiceDesc for ProxyService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
Functions ¶
func RegisterProxyServiceHandler ¶ added in v0.24.0
func RegisterProxyServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error
RegisterProxyServiceHandler registers the http handlers for service ProxyService to "mux". The handlers forward requests to the grpc endpoint over "conn".
func RegisterProxyServiceHandlerClient ¶ added in v0.24.0
func RegisterProxyServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client ProxyServiceClient) error
RegisterProxyServiceHandlerClient registers the http handlers for service ProxyService to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "ProxyServiceClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "ProxyServiceClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "ProxyServiceClient" to call the correct interceptors. This client ignores the HTTP middlewares.
func RegisterProxyServiceHandlerFromEndpoint ¶ added in v0.24.0
func RegisterProxyServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)
RegisterProxyServiceHandlerFromEndpoint is same as RegisterProxyServiceHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.
func RegisterProxyServiceHandlerServer ¶ added in v0.24.0
func RegisterProxyServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server ProxyServiceServer) error
RegisterProxyServiceHandlerServer registers the http handlers for service ProxyService to "mux". UnaryRPC :call ProxyServiceServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterProxyServiceHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.
func RegisterProxyServiceServer ¶
func RegisterProxyServiceServer(s grpc.ServiceRegistrar, srv ProxyServiceServer)
Types ¶
type HTTPRequest ¶
type HTTPRequest struct {
Method string `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"`
Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
Headers map[string]*StringValues `` /* 141-byte string literal not displayed */
Body []byte `protobuf:"bytes,4,opt,name=body,proto3" json:"body,omitempty"`
// contains filtered or unexported fields
}
HTTPRequest represents an HTTP request to be proxied
func (*HTTPRequest) Descriptor
deprecated
func (*HTTPRequest) Descriptor() ([]byte, []int)
Deprecated: Use HTTPRequest.ProtoReflect.Descriptor instead.
func (*HTTPRequest) GetBody ¶
func (x *HTTPRequest) GetBody() []byte
func (*HTTPRequest) GetHeaders ¶
func (x *HTTPRequest) GetHeaders() map[string]*StringValues
func (*HTTPRequest) GetMethod ¶
func (x *HTTPRequest) GetMethod() string
func (*HTTPRequest) GetUrl ¶
func (x *HTTPRequest) GetUrl() string
func (*HTTPRequest) ProtoMessage ¶
func (*HTTPRequest) ProtoMessage()
func (*HTTPRequest) ProtoReflect ¶
func (x *HTTPRequest) ProtoReflect() protoreflect.Message
func (*HTTPRequest) Reset ¶
func (x *HTTPRequest) Reset()
func (*HTTPRequest) String ¶
func (x *HTTPRequest) String() string
type HTTPResponse ¶
type HTTPResponse struct {
StatusCode int32 `protobuf:"varint,1,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
Headers map[string]*StringValues `` /* 141-byte string literal not displayed */
Body []byte `protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"`
// contains filtered or unexported fields
}
HTTPResponse represents an HTTP response from the proxy
func (*HTTPResponse) Descriptor
deprecated
func (*HTTPResponse) Descriptor() ([]byte, []int)
Deprecated: Use HTTPResponse.ProtoReflect.Descriptor instead.
func (*HTTPResponse) GetBody ¶
func (x *HTTPResponse) GetBody() []byte
func (*HTTPResponse) GetHeaders ¶
func (x *HTTPResponse) GetHeaders() map[string]*StringValues
func (*HTTPResponse) GetStatusCode ¶
func (x *HTTPResponse) GetStatusCode() int32
func (*HTTPResponse) ProtoMessage ¶
func (*HTTPResponse) ProtoMessage()
func (*HTTPResponse) ProtoReflect ¶
func (x *HTTPResponse) ProtoReflect() protoreflect.Message
func (*HTTPResponse) Reset ¶
func (x *HTTPResponse) Reset()
func (*HTTPResponse) String ¶
func (x *HTTPResponse) String() string
type LDAPSearchRequest ¶
type LDAPSearchRequest struct {
Request string `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"`
// contains filtered or unexported fields
}
LDAPSearchRequest is a wrapper around a marshalled LDAP Adapter request to an on-premises connector.
func (*LDAPSearchRequest) Descriptor
deprecated
func (*LDAPSearchRequest) Descriptor() ([]byte, []int)
Deprecated: Use LDAPSearchRequest.ProtoReflect.Descriptor instead.
func (*LDAPSearchRequest) GetRequest ¶
func (x *LDAPSearchRequest) GetRequest() string
func (*LDAPSearchRequest) ProtoMessage ¶
func (*LDAPSearchRequest) ProtoMessage()
func (*LDAPSearchRequest) ProtoReflect ¶
func (x *LDAPSearchRequest) ProtoReflect() protoreflect.Message
func (*LDAPSearchRequest) Reset ¶
func (x *LDAPSearchRequest) Reset()
func (*LDAPSearchRequest) String ¶
func (x *LDAPSearchRequest) String() string
type LDAPSearchResponse ¶
type LDAPSearchResponse struct {
Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"`
Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
// contains filtered or unexported fields
}
LDAPSearchResponse is a wrapper around a marshalled LDAP processed response or any error (marshalled framework.Error) while processing the request from an on-premises connector.
func (*LDAPSearchResponse) Descriptor
deprecated
func (*LDAPSearchResponse) Descriptor() ([]byte, []int)
Deprecated: Use LDAPSearchResponse.ProtoReflect.Descriptor instead.
func (*LDAPSearchResponse) GetError ¶
func (x *LDAPSearchResponse) GetError() string
func (*LDAPSearchResponse) GetResponse ¶
func (x *LDAPSearchResponse) GetResponse() string
func (*LDAPSearchResponse) ProtoMessage ¶
func (*LDAPSearchResponse) ProtoMessage()
func (*LDAPSearchResponse) ProtoReflect ¶
func (x *LDAPSearchResponse) ProtoReflect() protoreflect.Message
func (*LDAPSearchResponse) Reset ¶
func (x *LDAPSearchResponse) Reset()
func (*LDAPSearchResponse) String ¶
func (x *LDAPSearchResponse) String() string
type ProxyRequestMessage ¶
type ProxyRequestMessage struct {
Request *Request `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"`
ConnectorId string `protobuf:"bytes,2,opt,name=connector_id,json=connectorId,proto3" json:"connector_id,omitempty"`
ClientId string `protobuf:"bytes,3,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
TenantId string `protobuf:"bytes,4,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
// contains filtered or unexported fields
}
ProxyRequestMessage represents a request to be proxied to a specific connector
func (*ProxyRequestMessage) Descriptor
deprecated
func (*ProxyRequestMessage) Descriptor() ([]byte, []int)
Deprecated: Use ProxyRequestMessage.ProtoReflect.Descriptor instead.
func (*ProxyRequestMessage) GetClientId ¶
func (x *ProxyRequestMessage) GetClientId() string
func (*ProxyRequestMessage) GetConnectorId ¶
func (x *ProxyRequestMessage) GetConnectorId() string
func (*ProxyRequestMessage) GetRequest ¶
func (x *ProxyRequestMessage) GetRequest() *Request
func (*ProxyRequestMessage) GetTenantId ¶
func (x *ProxyRequestMessage) GetTenantId() string
func (*ProxyRequestMessage) ProtoMessage ¶
func (*ProxyRequestMessage) ProtoMessage()
func (*ProxyRequestMessage) ProtoReflect ¶
func (x *ProxyRequestMessage) ProtoReflect() protoreflect.Message
func (*ProxyRequestMessage) Reset ¶
func (x *ProxyRequestMessage) Reset()
func (*ProxyRequestMessage) String ¶
func (x *ProxyRequestMessage) String() string
type ProxyServiceClient ¶
type ProxyServiceClient interface {
// ProxyRequest forwards a request through the proxy
ProxyRequest(ctx context.Context, in *ProxyRequestMessage, opts ...grpc.CallOption) (*Response, error)
}
ProxyServiceClient is the client API for ProxyService 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.
ProxyService is a gRPC service implemented by the Connector Service to process proxied requests from the Adapters and Action Handlers and relaying them to the remote on-premises Connectors.
func NewProxyServiceClient ¶
func NewProxyServiceClient(cc grpc.ClientConnInterface) ProxyServiceClient
type ProxyServiceServer ¶
type ProxyServiceServer interface {
// ProxyRequest forwards a request through the proxy
ProxyRequest(context.Context, *ProxyRequestMessage) (*Response, error)
// contains filtered or unexported methods
}
ProxyServiceServer is the server API for ProxyService service. All implementations must embed UnimplementedProxyServiceServer for forward compatibility.
ProxyService is a gRPC service implemented by the Connector Service to process proxied requests from the Adapters and Action Handlers and relaying them to the remote on-premises Connectors.
type Request ¶
type Request struct {
// Types that are valid to be assigned to RequestType:
//
// *Request_HttpRequest
// *Request_SqlQueryReq
// *Request_LdapSearchRequest
RequestType isRequest_RequestType `protobuf_oneof:"request_type"`
// contains filtered or unexported fields
}
Request represents a request to be proxied
func (*Request) Descriptor
deprecated
func (*Request) GetHttpRequest ¶
func (x *Request) GetHttpRequest() *HTTPRequest
func (*Request) GetLdapSearchRequest ¶
func (x *Request) GetLdapSearchRequest() *LDAPSearchRequest
func (*Request) GetRequestType ¶
func (x *Request) GetRequestType() isRequest_RequestType
func (*Request) GetSqlQueryReq ¶
func (x *Request) GetSqlQueryReq() *SQLQueryRequest
func (*Request) ProtoMessage ¶
func (*Request) ProtoMessage()
func (*Request) ProtoReflect ¶
func (x *Request) ProtoReflect() protoreflect.Message
type Request_HttpRequest ¶
type Request_HttpRequest struct {
HttpRequest *HTTPRequest `protobuf:"bytes,1,opt,name=http_request,json=httpRequest,proto3,oneof"`
}
type Request_LdapSearchRequest ¶
type Request_LdapSearchRequest struct {
LdapSearchRequest *LDAPSearchRequest `protobuf:"bytes,3,opt,name=ldap_search_request,json=ldapSearchRequest,proto3,oneof"`
}
type Request_SqlQueryReq ¶
type Request_SqlQueryReq struct {
SqlQueryReq *SQLQueryRequest `protobuf:"bytes,2,opt,name=sql_query_req,json=sqlQueryReq,proto3,oneof"`
}
type Response ¶
type Response struct {
Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
// Types that are valid to be assigned to ResponseType:
//
// *Response_HttpResponse
// *Response_SqlQueryResponse
// *Response_LdapSearchResponse
ResponseType isResponse_ResponseType `protobuf_oneof:"response_type"`
// contains filtered or unexported fields
}
Response represents a response from the proxy
func (*Response) Descriptor
deprecated
func (*Response) GetHttpResponse ¶
func (x *Response) GetHttpResponse() *HTTPResponse
func (*Response) GetLdapSearchResponse ¶
func (x *Response) GetLdapSearchResponse() *LDAPSearchResponse
func (*Response) GetResponseType ¶
func (x *Response) GetResponseType() isResponse_ResponseType
func (*Response) GetSqlQueryResponse ¶
func (x *Response) GetSqlQueryResponse() *SQLQueryResponse
func (*Response) ProtoMessage ¶
func (*Response) ProtoMessage()
func (*Response) ProtoReflect ¶
func (x *Response) ProtoReflect() protoreflect.Message
type Response_HttpResponse ¶
type Response_HttpResponse struct {
HttpResponse *HTTPResponse `protobuf:"bytes,2,opt,name=http_response,json=httpResponse,proto3,oneof"`
}
type Response_LdapSearchResponse ¶
type Response_LdapSearchResponse struct {
LdapSearchResponse *LDAPSearchResponse `protobuf:"bytes,4,opt,name=ldap_search_response,json=ldapSearchResponse,proto3,oneof"`
}
type Response_SqlQueryResponse ¶
type Response_SqlQueryResponse struct {
SqlQueryResponse *SQLQueryResponse `protobuf:"bytes,3,opt,name=sql_query_response,json=sqlQueryResponse,proto3,oneof"`
}
type SQLQueryRequest ¶
type SQLQueryRequest struct {
Request string `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"`
// contains filtered or unexported fields
}
SQLQueryRequest is a wrapper around a marshalled SQL Adapter request to an on-premises connector.
func (*SQLQueryRequest) Descriptor
deprecated
func (*SQLQueryRequest) Descriptor() ([]byte, []int)
Deprecated: Use SQLQueryRequest.ProtoReflect.Descriptor instead.
func (*SQLQueryRequest) GetRequest ¶
func (x *SQLQueryRequest) GetRequest() string
func (*SQLQueryRequest) ProtoMessage ¶
func (*SQLQueryRequest) ProtoMessage()
func (*SQLQueryRequest) ProtoReflect ¶
func (x *SQLQueryRequest) ProtoReflect() protoreflect.Message
func (*SQLQueryRequest) Reset ¶
func (x *SQLQueryRequest) Reset()
func (*SQLQueryRequest) String ¶
func (x *SQLQueryRequest) String() string
type SQLQueryResponse ¶
type SQLQueryResponse struct {
Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"`
Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
// contains filtered or unexported fields
}
SQLQueryResponse is a wrapper around a marshalled SQL processed response or any error (marshalled framework.Error) while processing the request from an on-premises connector.
func (*SQLQueryResponse) Descriptor
deprecated
func (*SQLQueryResponse) Descriptor() ([]byte, []int)
Deprecated: Use SQLQueryResponse.ProtoReflect.Descriptor instead.
func (*SQLQueryResponse) GetError ¶
func (x *SQLQueryResponse) GetError() string
func (*SQLQueryResponse) GetResponse ¶
func (x *SQLQueryResponse) GetResponse() string
func (*SQLQueryResponse) ProtoMessage ¶
func (*SQLQueryResponse) ProtoMessage()
func (*SQLQueryResponse) ProtoReflect ¶
func (x *SQLQueryResponse) ProtoReflect() protoreflect.Message
func (*SQLQueryResponse) Reset ¶
func (x *SQLQueryResponse) Reset()
func (*SQLQueryResponse) String ¶
func (x *SQLQueryResponse) String() string
type StringValues ¶
type StringValues struct {
Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
// contains filtered or unexported fields
}
StringValues for a list of string values.
func (*StringValues) Descriptor
deprecated
func (*StringValues) Descriptor() ([]byte, []int)
Deprecated: Use StringValues.ProtoReflect.Descriptor instead.
func (*StringValues) GetValues ¶
func (x *StringValues) GetValues() []string
func (*StringValues) ProtoMessage ¶
func (*StringValues) ProtoMessage()
func (*StringValues) ProtoReflect ¶
func (x *StringValues) ProtoReflect() protoreflect.Message
func (*StringValues) Reset ¶
func (x *StringValues) Reset()
func (*StringValues) String ¶
func (x *StringValues) String() string
type UnimplementedProxyServiceServer ¶
type UnimplementedProxyServiceServer struct{}
UnimplementedProxyServiceServer 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 (UnimplementedProxyServiceServer) ProxyRequest ¶
func (UnimplementedProxyServiceServer) ProxyRequest(context.Context, *ProxyRequestMessage) (*Response, error)
type UnsafeProxyServiceServer ¶
type UnsafeProxyServiceServer interface {
// contains filtered or unexported methods
}
UnsafeProxyServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ProxyServiceServer will result in compilation errors.