providers

package
v2.20.0 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2024 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const EnvVarSkipEKSHostnameCheck = "STRATUS_SKIP_EKS_HOSTNAME_CHECK"
View Source
const (
	KubeconfigDefaultPath = ".kube/config"
)

Variables

This section is empty.

Functions

func GetKubeConfigPath

func GetKubeConfigPath() string

GetKubeConfigPath returns the path of the kubeconfig, with the following priority: 1. KUBECONFIG environment variable 2. $HOME/.kube/config

Types

type AWSProvider

type AWSProvider struct {
	UniqueCorrelationId uuid.UUID // unique value injected in the user-agent, to differentiate Stratus Red Team executions
	// contains filtered or unexported fields
}

func NewAWSProvider added in v2.5.0

func NewAWSProvider(uuid uuid.UUID) *AWSProvider

func (*AWSProvider) GetConnection

func (m *AWSProvider) GetConnection() aws.Config

func (*AWSProvider) IsAuthenticatedAgainstAWS

func (m *AWSProvider) IsAuthenticatedAgainstAWS() bool

type AzureProvider

type AzureProvider struct {
	Credentials         *azidentity.DefaultAzureCredential
	ClientOptions       *arm.ClientOptions
	SubscriptionID      string
	UniqueCorrelationId uuid.UUID // unique value injected in the user-agent, to differentiate Stratus Red Team executions
}

func NewAzureProvider added in v2.5.0

func NewAzureProvider(uuid uuid.UUID) *AzureProvider

func (*AzureProvider) GetCredentials

func (m *AzureProvider) GetCredentials() *azidentity.DefaultAzureCredential

func (*AzureProvider) IsAuthenticatedAgainstAzure

func (m *AzureProvider) IsAuthenticatedAgainstAzure() bool

type EKSProvider added in v2.16.0

type EKSProvider struct {
	UniqueCorrelationId uuid.UUID // unique value injected in the user-agent, to differentiate Stratus Red Team executions
	// contains filtered or unexported fields
}

func NewEKSProvider added in v2.16.0

func NewEKSProvider(uuid uuid.UUID) *EKSProvider

func (*EKSProvider) GetAWSConnection added in v2.16.0

func (m *EKSProvider) GetAWSConnection() aws.Config

func (*EKSProvider) GetK8sClient added in v2.16.0

func (m *EKSProvider) GetK8sClient() *kubernetes.Clientset

func (*EKSProvider) IsAuthenticatedAgainstEKS added in v2.16.0

func (m *EKSProvider) IsAuthenticatedAgainstEKS() bool

type EntraIdProvider added in v2.17.0

type EntraIdProvider struct {
	Credentials     *azidentity.DefaultAzureCredential
	ClientOptions   *arm.ClientOptions
	GraphClient     *graph.GraphServiceClient
	BetaGraphClient *betagraph.GraphServiceClient
}

func NewEntraIdProvider added in v2.17.0

func NewEntraIdProvider(uuid uuid.UUID) *EntraIdProvider

func (*EntraIdProvider) GetBetaGraphClient added in v2.17.0

func (m *EntraIdProvider) GetBetaGraphClient() *betagraph.GraphServiceClient

func (*EntraIdProvider) GetGraphClient added in v2.17.0

func (m *EntraIdProvider) GetGraphClient() *graph.GraphServiceClient

func (*EntraIdProvider) GetTenantId added in v2.17.0

func (m *EntraIdProvider) GetTenantId() (string, error)

func (*EntraIdProvider) IsAuthenticatedAgainstEntraId added in v2.17.0

func (m *EntraIdProvider) IsAuthenticatedAgainstEntraId() bool

type GCPProvider added in v2.5.0

type GCPProvider struct {
	UniqueCorrelationId uuid.UUID
	ProjectId           string
}

func NewGCPProvider added in v2.5.0

func NewGCPProvider(uuid uuid.UUID) *GCPProvider

func (*GCPProvider) GetProjectId added in v2.5.0

func (m *GCPProvider) GetProjectId() string

func (*GCPProvider) IsAuthenticated added in v2.5.0

func (m *GCPProvider) IsAuthenticated() bool

func (*GCPProvider) Options added in v2.5.0

func (m *GCPProvider) Options() option.ClientOption

type K8sProvider

type K8sProvider struct {
	RestConfig          *rest.Config
	UniqueCorrelationId uuid.UUID // unique value injected in the user-agent, to differentiate Stratus Red Team executions
	// contains filtered or unexported fields
}

func NewK8sProvider added in v2.5.0

func NewK8sProvider(uuid uuid.UUID) *K8sProvider

func (*K8sProvider) GetClient

func (m *K8sProvider) GetClient() *kubernetes.Clientset

GetClient is used to authenticate with Kubernetes and build the client from a kubeconfig

func (*K8sProvider) GetRestConfig

func (m *K8sProvider) GetRestConfig() *rest.Config

func (*K8sProvider) IsAuthenticated

func (m *K8sProvider) IsAuthenticated() bool

Jump to

Keyboard shortcuts

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