Versions in this module Expand all Collapse all v11 v11.3.3 Dec 13, 2022 Changes in this version + const DefaultMongoDBServerSelectionTimeout + const MaxPages + func ConvertConnectError(err error, sessionCtx *Session) error + func ConvertError(err error) error + func IsUnrecognizedAWSEngineNameError(err error) bool + func MakeDatabaseMetadata(session *Session) events.DatabaseMetadata + func MakeEventMetadata(session *Session, eventType, eventCode string) events.Metadata + func MakeServerMetadata(session *Session) events.ServerMetadata + func MakeSessionMetadata(session *Session) events.SessionMetadata + func MakeTestClientTLSCert(config TestClientConfig) (*tls.Certificate, error) + func MakeTestClientTLSConfig(config TestClientConfig) (*tls.Config, error) + func MakeTestServerTLSConfig(config TestServerConfig) (*tls.Config, error) + func MakeUserMetadata(session *Session) events.UserMetadata + func RegisterEngine(fn EngineFn, names ...string) + type Audit interface + EmitEvent func(ctx context.Context, event events.AuditEvent) + OnQuery func(ctx context.Context, session *Session, query Query) + OnSessionEnd func(ctx context.Context, session *Session) + OnSessionStart func(ctx context.Context, session *Session, sessionErr error) + func NewAudit(config AuditConfig) (Audit, error) + type AuditConfig struct + Emitter events.Emitter + func (c *AuditConfig) Check() error + type Auth interface + GetAuthPreference func(ctx context.Context) (types.AuthPreference, error) + GetAzureAccessToken func(ctx context.Context, sessionCtx *Session) (string, error) + GetAzureCacheForRedisToken func(ctx context.Context, sessionCtx *Session) (string, error) + GetAzureIdentityResourceID func(ctx context.Context, identityName string) (string, error) + GetCloudSQLAuthToken func(ctx context.Context, sessionCtx *Session) (string, error) + GetCloudSQLPassword func(ctx context.Context, sessionCtx *Session) (string, error) + GetRDSAuthToken func(sessionCtx *Session) (string, error) + GetRedshiftAuthToken func(sessionCtx *Session) (string, string, error) + GetTLSConfig func(ctx context.Context, sessionCtx *Session) (*tls.Config, error) + func NewAuth(config AuthConfig) (Auth, error) + type AuthClient interface + GenerateDatabaseCert func(ctx context.Context, req *proto.DatabaseCertRequest) (*proto.DatabaseCertResponse, error) + GetAuthPreference func(ctx context.Context) (types.AuthPreference, error) + type AuthConfig struct + AuthClient AuthClient + Clients cloud.Clients + Clock clockwork.Clock + Log logrus.FieldLogger + func (c *AuthConfig) CheckAndSetDefaults() error + type ConnectParams struct + ClientIP string + Database string + User string + type Engine interface + HandleConnection func(context.Context, *Session) error + InitializeConnection func(clientConn net.Conn, sessionCtx *Session) error + SendError func(error) + func GetEngine(name string, conf EngineConfig) (Engine, error) + type EngineConfig struct + Audit Audit + Auth Auth + AuthClient *auth.Client + Clock clockwork.Clock + CloudClients cloud.Clients + Context context.Context + Log logrus.FieldLogger + Users Users + func (c *EngineConfig) CheckAndSetDefaults() error + type EngineFn func(EngineConfig) Engine + type Proxy interface + HandleConnection func(context.Context, net.Conn) error + type ProxyContext struct + AuthContext *auth.Context + Cluster reversetunnel.RemoteSite + Identity tlsca.Identity + Servers []types.DatabaseServer + type Query struct + Database string + Error error + Parameters []string + Query string + type Service interface + Authorize func(ctx context.Context, tlsConn utils.TLSConn, params ConnectParams) (*ProxyContext, error) + Connect func(ctx context.Context, proxyCtx *ProxyContext) (net.Conn, error) + Proxy func(ctx context.Context, proxyCtx *ProxyContext, clientConn, serviceConn net.Conn) error + type Session struct + Checker services.AccessChecker + ClusterName string + Database types.Database + DatabaseName string + DatabaseUser string + HostID string + ID string + Identity tlsca.Identity + LockTargets []types.LockTarget + Log logrus.FieldLogger + StartupParameters map[string]string + func (c *Session) MFAParams(authPrefMFARequirement types.RequireMFAType) services.AccessMFAParams + func (c *Session) String() string + type TestClientConfig struct + Address string + AuthClient auth.ClientI + AuthServer *auth.Server + Cluster string + RouteToDatabase tlsca.RouteToDatabase + Username string + type TestServerConfig struct + AuthClient auth.ClientI + AuthToken string + AuthUser string + CN string + ClientAuth tls.ClientAuthType + ListenTLS bool + Listener net.Listener + Name string + func (cfg *TestServerConfig) CheckAndSetDefaults() error + func (cfg *TestServerConfig) Close() error + func (cfg *TestServerConfig) CloseOnError(err *error) error + func (cfg *TestServerConfig) Port() (string, error) + type Users interface + GetPassword func(ctx context.Context, database types.Database, userName string) (string, error)