externalauditstorage

package
v0.0.0-...-477458c Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2024 License: Apache-2.0 Imports: 11 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ValidateS3URI

func ValidateS3URI(uri string) error

ValidateS3URI validates a URI indicating an S3 bucket and prefix for storing audit logs (session recordings or events).

Types

type ExternalAuditStorage

type ExternalAuditStorage struct {
	// ResourceHeader is the common resource header for all resources.
	header.ResourceHeader

	// Spec is the specification for the External Audit Storage.
	Spec ExternalAuditStorageSpec `json:"spec" yaml:"spec"`
}

ExternalAuditStorage is internal representation of an External Audit Storage resource. Proto definion can be found https://github.com/gravitational/teleport/blob/master/api/proto/teleport/externalauditstorage/v1/externalauditstorage.proto

func GenerateDraftExternalAuditStorage

func GenerateDraftExternalAuditStorage(integrationName, region string) (*ExternalAuditStorage, error)

GenerateDraftExternalAuditStorage creates a new draft ExternalAuditStorage with randomized resource names.

func NewClusterExternalAuditStorage

func NewClusterExternalAuditStorage(metadata header.Metadata, spec ExternalAuditStorageSpec) (*ExternalAuditStorage, error)

NewClusterExternalAuditStorage will create a new cluster External Audit Storage.

func NewDraftExternalAuditStorage

func NewDraftExternalAuditStorage(metadata header.Metadata, spec ExternalAuditStorageSpec) (*ExternalAuditStorage, error)

NewDraftExternalAuditStorage will create a new draft External Audit Storage.

func (*ExternalAuditStorage) CheckAndSetDefaults

func (a *ExternalAuditStorage) CheckAndSetDefaults() error

CheckAndSetDefaults validates fields and populates empty fields with default values.

func (*ExternalAuditStorage) Clone

Clone returs a copy of the resource.

func (*ExternalAuditStorage) CloneResource

func (a *ExternalAuditStorage) CloneResource() types.ResourceWithLabels

CloneResource returns a copy of the resource as types.ResourceWithLabels.

func (*ExternalAuditStorage) GetMetadata

func (a *ExternalAuditStorage) GetMetadata() types.Metadata

GetMetadata returns metadata. This is specifically for conforming to the Resource interface, and should be removed when possible.

func (*ExternalAuditStorage) MatchSearch

func (a *ExternalAuditStorage) MatchSearch(values []string) bool

MatchSearch goes through select field values of a resource and tries to match against the list of search values.

type ExternalAuditStorageSpec

type ExternalAuditStorageSpec struct {
	// IntegrationName is name of existing OIDC integration used to
	// generate AWS credentials.
	IntegrationName string `json:"integration_name" yaml:"integration_name"`
	// PolicyName is the name of the IAM policy to attach to the integration
	// IAM role.
	PolicyName string `json:"policy_name" yaml:"policy_name"`
	// Region is the AWS region where the infrastructure is hosted.
	Region string `json:"region" yaml:"region"`
	// SessionRecordingsURI is s3 path used to store session recordings.
	SessionRecordingsURI string `json:"session_recordings_uri" yaml:"session_recordings_uri"`
	// AthenaWorkgroup is workgroup used by Athena audit logs during queries.
	AthenaWorkgroup string `json:"athena_workgroup" yaml:"athena_workgroup"`
	// GlueDatabase is database used by Athena audit logs during queries.
	GlueDatabase string `json:"glue_database" yaml:"glue_database"`
	// GlueTable is table used by Athena audit logs during queries.
	GlueTable string `json:"glue_table" yaml:"glue_table"`
	// AuditEventsLongTermURI is s3 path used to store batched parquet files with
	// audit events, partitioned by event date.
	AuditEventsLongTermURI string `json:"audit_events_long_term_uri" yaml:"audit_events_long_term_uri"`
	// AthenaResultsURI is s3 path used to store temporary results generated by
	// Athena engine.
	AthenaResultsURI string `json:"athena_results_uri" yaml:"athena_results_uri"`
}

ExternalAuditStorageSpec is the specification for an External Audit Storage.

Directories

Path Synopsis
convert
v1

Jump to

Keyboard shortcuts

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