service

package
v1.1.2-experimental Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2023 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DatabaseProtocolTypeMySql is the database
	// service protocol for mysql databases.
	DatabaseProtocolMySql = "mysql"

	// DatabaseServiceTypePostgreSql is the database
	// service protocol for postgresql databases.
	DatabaseProtocolPostgreSql = "postgresql"
)
View Source
const (
	// DatabaseAuthenticationTypeAwsIam is the authentication type
	// for databases that use AWS IAM credentials for authentication.
	DatabaseAuthenticationTypeAwsIam = "aws_iam"

	// DatabaseAuthenticationTypeUsernameAndPassword is the authentication type
	// for databases that use username and password for authentication.
	DatabaseAuthenticationTypeUsernameAndPassword = "username_and_password"
)
View Source
const (
	// ServiceTypeDatabase is the service type for database services (fka sockets).
	ServiceTypeDatabase = "database"

	// ServiceTypeHttp is the service type for http services (fka sockets).
	ServiceTypeHttp = "http"

	// ServiceTypeSsh is the service type for ssh services (fka sockets).
	ServiceTypeSsh = "ssh"

	// ServiceTypeTls is the service type for tls services (fka sockets).
	ServiceTypeTls = "tls"
)
View Source
const (
	// SshServiceTypeStandard is the ssh
	// service type for standard ssh services.
	SshServiceTypeStandard = "standard"

	// SshServiceTypeAwsSsm is the ssh service
	// type for aws session manager ssh services.
	SshServiceTypeAwsSsm = "aws_ssm"

	// SshServiceTypeAwsEc2InstanceConnect is the ssh service
	// type for aws ec2 instance connect ssh services.
	SshServiceTypeAwsEc2InstanceConnect = "aws_ec2_instance_connect"

	// SshServiceTypeConnectorBuiltIn is the ssh service
	// type for the connector's built-in ssh service.
	SshServiceTypeConnectorBuiltIn = "connector_built_in_ssh_service"
)
View Source
const (
	// SsmTargetTypeEc2 is the ssm target type for ec2 targets.
	SsmTargetTypeEc2 = "ec2"

	// SsmTargetTypeEcs is the ssm target type for ecs targets.
	SsmTargetTypeEcs = "ecs"
)
View Source
const (
	// StandardSshServiceAuthenticationTypeUsernameAndPassword is the standard ssh
	// service authentication type for authenticating with a username and password.
	StandardSshServiceAuthenticationTypeUsernameAndPassword = "username_and_password"

	// StandardSshServiceAuthenticationTypePrivateKey is the standard ssh
	// service authentication type for authenticating with a private key.
	StandardSshServiceAuthenticationTypePrivateKey = "private_key"

	// StandardSshServiceAuthenticationTypeBorder0Certificate is the standard ssh
	// service authentication type for authenticating with a border0-signed certificate.
	StandardSshServiceAuthenticationTypeBorder0Certificate = "border0_certificate"
)
View Source
const (
	// UsernameProviderDefined is the username provider
	// option for using an admin-defined (static) username.
	UsernameProviderDefined = "defined"

	// UsernameProviderPromptClient is username provider option
	// for prompting connecting clients for the username.
	UsernameProviderPromptClient = "prompt_client"

	// UsernameProviderUseConnectorUser is username provider
	// option for using the connector's OS username.
	//
	// NOTE: This option can only be used as the username
	// provider for connector built-in ssh services.
	UsernameProviderUseConnectorUser = "use_connector_user"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AwsCredentials

type AwsCredentials struct {
	AwsAccessKeyId     string `json:"aws_access_key_id"`
	AwsSecretAccessKey string `json:"aws_secret_access_key"`
	AwsSessionToken    string `json:"aws_session_token,omitempty"`
	AwsProfile         string `json:"aws_profile,omitempty"`
	AwsRegion          string `json:"aws_region,omitempty"`
}

AwsCredentials represents aws credentials.

type AwsEc2ICSshServiceConfiguration

type AwsEc2ICSshServiceConfiguration struct {
	HostnameAndPort                   // inherited
	Ec2InstanceId     string          `json:"ec2_instance_id"`
	Ec2InstanceRegion string          `json:"ec2_instance_region"`
	AwsCredentials    *AwsCredentials `json:"aws_credentials,omitempty"`
}

AwsEc2ICSshServiceConfiguration represents service configuration for aws ec2 instance connect ssh services (fka sockets).

type AwsSsmEc2TargetConfiguration added in v1.1.2

type AwsSsmEc2TargetConfiguration struct {
	Ec2InstanceId     string          `json:"ec2_instance_id"`
	Ec2InstanceRegion string          `json:"ec2_instance_region"`
	AwsCredentials    *AwsCredentials `json:"aws_credentials,omitempty"`
}

AwsSsmEc2TargetConfiguration represents service configuration for aws ssm ssh services (fka sockets) that have EC2 instances as their ssm target.

type AwsSsmEcsTargetConfiguration added in v1.1.2

type AwsSsmEcsTargetConfiguration struct {
	EcsClusterRegion string          `json:"ecs_cluster_region"`
	EcsClusterName   string          `json:"ecs_cluster_name"`
	EcsServiceName   string          `json:"ecs_service_name"`
	AwsCredentials   *AwsCredentials `json:"aws_credentials,omitempty"`
}

AwsSsmEcsTargetConfiguration represents service configuration for aws ssm ssh services (fka sockets) that have ECS services as their ssm target.

type AwsSsmSshServiceConfiguration

type AwsSsmSshServiceConfiguration struct {
	SsmTargetType string `json:"ssm_target_type"`

	// mutually exclusive fields below
	AwsSsmEc2TargetConfiguration *AwsSsmEc2TargetConfiguration `json:"aws_ssm_ec2_target_configuration,omitempty"`
	AwsSsmEcsTargetConfiguration *AwsSsmEcsTargetConfiguration `json:"aws_ssm_ecs_target_configuration,omitempty"`
}

AwsSsmSshServiceConfiguration represents service configuration for aws ssm ssh services (fka sockets).

type Border0CertificateAuthConfiguration

type Border0CertificateAuthConfiguration struct {
	UsernameProvider string `json:"username_provider,omitempty"`
	Username         string `json:"username,omitempty"`
}

UsernameAndPasswordAuthConfiguration represents authentication configuration for standard ssh services that require a border0-signed certificate for authentication.

type BuiltInSshServiceConfiguration

type BuiltInSshServiceConfiguration struct {
	UsernameProvider string `json:"username_provider,omitempty"`
	Username         string `json:"username,omitempty"`
}

BuiltInSshServiceConfiguration represents the service configuration for the connector built-in ssh services (fka sockets).

type CloudSqlConnectorConfiguration

type CloudSqlConnectorConfiguration struct {
	CloudSqlInstanceId string `json:"cloudsql_instance_id"`
}

type CloudSqlConnectorlessConfiguration

type CloudSqlConnectorlessConfiguration struct {
	HostnameAndPort // inherit
}

type CloudSqlDatabaseServiceConfiguration

type CloudSqlDatabaseServiceConfiguration struct {
	UsingConnector bool `json:"using_cloudsql_connector"`

	CloudSqlConnectorConfiguration     *CloudSqlConnectorConfiguration     `json:"cloudsql_connector_configuration"`
	CloudSqlConnectorlessConfiguration *CloudSqlConnectorlessConfiguration `json:"cloudsql_connectorless_configuration"`
}

CloudSqlDatabaseServiceConfiguration

type Configuration

type Configuration struct {
	ServiceType string `json:"service_type"`

	DatabaseServiceConfiguration *DatabaseServiceConfiguration `json:"database_service_configuration,omitempty"`
	HttpServiceConfiguration     *HttpServiceConfiguration     `json:"http_service_configuration,omitempty"`
	SshServiceConfiguration      *SshServiceConfiguration      `json:"ssh_service_configuration,omitempty"`
	TlsServiceConfiguration      *TlsServiceConfiguration      `json:"tls_service_configuration,omitempty"`
}

Configuration represents service configuration.

type DatabaseServiceConfiguration

type DatabaseServiceConfiguration struct {
	DatabaseServiceType string `json:"database_service_type"`

	// mutually exclusive fields below
	StandardDatabaseServiceConfiguration *StandardDatabaseServiceConfiguration `json:"standard_database_service_configuration,omitempty"`
	CloudSqlDatabaseServiceConfiguration *CloudSqlDatabaseServiceConfiguration `json:"cloudsql_database_service_configuration,omitempty"`
}

DatabaseServiceConfiguration represents service configuration for database services (fka sockets).

type HostnameAndPort

type HostnameAndPort struct {
	Hostname string `json:"hostname"`
	Port     uint16 `json:"port"`
}

HostnameAndPort represents a host and port.

type HttpServiceConfiguration

type HttpServiceConfiguration struct {
	HostnameAndPort // inherited
}

HttpServiceConfiguration represents service configuration for http services (fka sockets).

type PrivateKeyAuthConfiguration

type PrivateKeyAuthConfiguration struct {
	UsernameProvider string `json:"username_provider,omitempty"`
	Username         string `json:"username,omitempty"`
	PrivateKey       string `json:"private_key"`
}

PrivateKeyAuthConfiguration represents authentication configuration for standard ssh services that require a private key for authentication.

type SshServiceConfiguration

type SshServiceConfiguration struct {
	SshServiceType string `json:"ssh_service_type"`

	// mutually exclusive fields below
	StandardSshServiceConfiguration *StandardSshServiceConfiguration `json:"standard_ssh_service_configuration,omitempty"`
	AwsSsmSshServiceConfiguration   *AwsSsmSshServiceConfiguration   `json:"aws_ssm_ssh_service_configuration,omitempty"`
	AwsEc2ICSshServiceConfiguration *AwsEc2ICSshServiceConfiguration `json:"aws_ec2ic_ssh_service_configuration,omitempty"`
	BuiltInSshServiceConfiguration  *BuiltInSshServiceConfiguration  `json:"built_in_ssh_service_configuration,omitmepty"`
}

SshServiceConfiguration represents service configuration for shell services (fka sockets).

type StandardDatabaseServiceConfiguration

type StandardDatabaseServiceConfiguration struct {
	HostnameAndPort           // inherited
	DatabaseProtocol   string `json:"protocol"`
	AuthenticationType string `json:"authentication_type"`
}

StandardDatabaseServiceConfiguration represents service configuration for standard database services (fka sockets).

type StandardSshServiceConfiguration

type StandardSshServiceConfiguration struct {
	SshAuthenticationType string `json:"ssh_authentication_type"`

	HostnameAndPort // inherited

	// mutually exclusive fields below
	UsernameAndPasswordAuthConfiguration *UsernameAndPasswordAuthConfiguration `json:"username_and_password_auth_configuration,omitempty"`
	PrivateKeyAuthConfiguration          *PrivateKeyAuthConfiguration          `json:"private_key_auth_configuration,omitempty"`
	Border0CertificateAuthConfiguration  *Border0CertificateAuthConfiguration  `json:"border0_certificate_auth_configuration,omitempty"`
}

StandardSshServiceConfiguration represents service configuration for standard ssh services (fka sockets).

type TlsServiceConfiguration

type TlsServiceConfiguration struct {
	HostnameAndPort // inherited
}

TlsServiceConfiguration represents service configuration for tls services (fka sockets).

type UsernameAndPasswordAuthConfiguration

type UsernameAndPasswordAuthConfiguration struct {
	UsernameProvider string `json:"username_provider,omitempty"`
	Username         string `json:"username,omitempty"`
	Password         string `json:"password"`
}

UsernameAndPasswordAuthConfiguration represents authentication configuration for standard ssh services that require a username and password for authentication.

Directories

Path Synopsis
connector

Jump to

Keyboard shortcuts

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