security

package
v1.4.3 Latest Latest
Warning

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

Go to latest
Published: Jul 4, 2025 License: MIT Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ENV_PREFIX                  string = "ALIBABA_CLOUD_"
	ACCESS_KEY_ID_KEY           string = ENV_PREFIX + "ACCESS_KEY_ID"
	ACCESS_KEY_SECRET_KEY       string = ENV_PREFIX + "ACCESS_KEY_SECRET"
	SECURITY_TOKEN_KEY          string = ENV_PREFIX + "SECURITY_TOKEN"
	SIGNATURE_REGION_ID_KEY     string = ENV_PREFIX + "SIGNATURE_REGION_ID"
	RAM_ROLE_NAME_KEY           string = ENV_PREFIX + "RAM_ROLE_NAME"
	ROLE_ARN_KEY                string = ENV_PREFIX + "ROLE_ARN"
	ROLE_SESSION_NAME_KEY       string = ENV_PREFIX + "ROLE_SESSION_NAME"
	ROLE_SESSION_EXPIRATION_KEY string = ENV_PREFIX + "ROLE_SESSION_EXPIRATION"
	POLICY_KEY                  string = ENV_PREFIX + "POLICY"
	OIDC_PROVIDER_ARN_KEY       string = ENV_PREFIX + "OIDC_PROVIDER_ARN"
	OIDC_TOKEN_FILE_KEY         string = ENV_PREFIX + "OIDC_TOKEN_FILE"
	CREDENTIALS_URI_KEY         string = ENV_PREFIX + "CREDENTIALS_URI"
	SECRET_NAME_KEY             string = ENV_PREFIX + "SECRET_NAME"
)
View Source
const (
	CONFIG_AK_FILED          string = "Spas-AccessKey"
	NAMING_AK_FILED          string = "ak"
	SECURITY_TOKEN_HEADER    string = "Spas-SecurityToken"
	SIGNATURE_VERSION_HEADER string = "signatureVersion"
	SIGNATURE_VERSION_V4     string = "v4"
	SERVICE_INFO_SPLITER     string = "@@"
	TIMESTAMP_HEADER         string = "Timestamp"
	SIGNATURE_HEADER         string = "Spas-Signature"
)
View Source
const (
	REQUEST_TYPE_CONFIG = "config"
	REQUEST_TYPE_NAMING = "naming"
)
View Source
const (
	PREFIX                 = "aliyun_v4"
	CONSTANT               = "aliyun_v4_request"
	V4_SIGN_DATE_FORMATTER = "20060102"
	SIGNATURE_V4_PRODUCE   = "mse"
)

Variables

This section is empty.

Functions

func GetNacosProperties added in v1.4.3

func GetNacosProperties(property string, envKey string) string

func Sign added in v1.4.3

func Sign(data, key string) (string, error)

Types

type AccessKeyCredentialProvider added in v1.4.3

type AccessKeyCredentialProvider struct {
	// contains filtered or unexported fields
}

func (*AccessKeyCredentialProvider) GetCredentialsForNacosClient added in v1.4.3

func (provider *AccessKeyCredentialProvider) GetCredentialsForNacosClient() RamContext

func (*AccessKeyCredentialProvider) Init added in v1.4.3

func (provider *AccessKeyCredentialProvider) Init() error

func (*AccessKeyCredentialProvider) MatchProvider added in v1.4.3

func (provider *AccessKeyCredentialProvider) MatchProvider() bool

type AuthClient

type AuthClient interface {
	Login() (bool, error)
	GetSecurityInfo(resource RequestResource) map[string]string
	UpdateServerList(serverList []constant.ServerConfig)
}

type AutoRotateCredentialProvider added in v1.4.3

type AutoRotateCredentialProvider struct {
	// contains filtered or unexported fields
}

func (*AutoRotateCredentialProvider) GetCredentialsForNacosClient added in v1.4.3

func (provider *AutoRotateCredentialProvider) GetCredentialsForNacosClient() RamContext

func (*AutoRotateCredentialProvider) Init added in v1.4.3

func (provider *AutoRotateCredentialProvider) Init() error

func (*AutoRotateCredentialProvider) MatchProvider added in v1.4.3

func (provider *AutoRotateCredentialProvider) MatchProvider() bool

type ConfigResourceInjector added in v1.4.3

type ConfigResourceInjector struct {
}

type CredentialsURICredentialProvider added in v1.4.3

type CredentialsURICredentialProvider struct {
	// contains filtered or unexported fields
}

func (*CredentialsURICredentialProvider) GetCredentialsForNacosClient added in v1.4.3

func (provider *CredentialsURICredentialProvider) GetCredentialsForNacosClient() RamContext

func (*CredentialsURICredentialProvider) Init added in v1.4.3

func (provider *CredentialsURICredentialProvider) Init() error

func (*CredentialsURICredentialProvider) MatchProvider added in v1.4.3

func (provider *CredentialsURICredentialProvider) MatchProvider() bool

type EcsRamRoleCredentialProvider added in v1.4.3

type EcsRamRoleCredentialProvider struct {
	// contains filtered or unexported fields
}

func (*EcsRamRoleCredentialProvider) GetCredentialsForNacosClient added in v1.4.3

func (provider *EcsRamRoleCredentialProvider) GetCredentialsForNacosClient() RamContext

func (*EcsRamRoleCredentialProvider) Init added in v1.4.3

func (provider *EcsRamRoleCredentialProvider) Init() error

func (*EcsRamRoleCredentialProvider) MatchProvider added in v1.4.3

func (provider *EcsRamRoleCredentialProvider) MatchProvider() bool

type NacosAuthClient added in v1.4.3

type NacosAuthClient struct {
	// contains filtered or unexported fields
}

func NewNacosAuthClient added in v1.4.3

func NewNacosAuthClient(clientCfg constant.ClientConfig, serverCfgs []constant.ServerConfig, agent http_agent.IHttpAgent) *NacosAuthClient

func (*NacosAuthClient) AutoRefresh added in v1.4.3

func (ac *NacosAuthClient) AutoRefresh(ctx context.Context)

func (*NacosAuthClient) GetAccessToken added in v1.4.3

func (ac *NacosAuthClient) GetAccessToken() string

func (*NacosAuthClient) GetSecurityInfo added in v1.4.3

func (ac *NacosAuthClient) GetSecurityInfo(resource RequestResource) map[string]string

func (*NacosAuthClient) GetServerList added in v1.4.3

func (ac *NacosAuthClient) GetServerList() []constant.ServerConfig

func (*NacosAuthClient) Login added in v1.4.3

func (ac *NacosAuthClient) Login() (bool, error)

func (*NacosAuthClient) UpdateServerList added in v1.4.3

func (ac *NacosAuthClient) UpdateServerList(serverList []constant.ServerConfig)

type NamingResourceInjector added in v1.4.3

type NamingResourceInjector struct {
}

type OIDCRoleArnCredentialProvider added in v1.4.3

type OIDCRoleArnCredentialProvider struct {
	// contains filtered or unexported fields
}

func (*OIDCRoleArnCredentialProvider) GetCredentialsForNacosClient added in v1.4.3

func (provider *OIDCRoleArnCredentialProvider) GetCredentialsForNacosClient() RamContext

func (*OIDCRoleArnCredentialProvider) Init added in v1.4.3

func (provider *OIDCRoleArnCredentialProvider) Init() error

func (*OIDCRoleArnCredentialProvider) MatchProvider added in v1.4.3

func (provider *OIDCRoleArnCredentialProvider) MatchProvider() bool

type RamAuthClient added in v1.4.3

type RamAuthClient struct {
	// contains filtered or unexported fields
}

func NewRamAuthClient added in v1.4.3

func NewRamAuthClient(clientCfg constant.ClientConfig) *RamAuthClient

func NewRamAuthClientWithProvider added in v1.4.3

func NewRamAuthClientWithProvider(clientCfg constant.ClientConfig, ramCredentialProvider RamCredentialProvider) *RamAuthClient

func (*RamAuthClient) GetSecurityInfo added in v1.4.3

func (rac *RamAuthClient) GetSecurityInfo(resource RequestResource) map[string]string

func (*RamAuthClient) Login added in v1.4.3

func (rac *RamAuthClient) Login() (bool, error)

func (*RamAuthClient) UpdateServerList added in v1.4.3

func (rac *RamAuthClient) UpdateServerList(serverList []constant.ServerConfig)

type RamContext added in v1.4.3

type RamContext struct {
	SignatureRegionId    string
	AccessKey            string
	SecretKey            string
	SecurityToken        string
	EphemeralAccessKeyId bool
}

type RamCredentialProvider added in v1.4.3

type RamCredentialProvider interface {
	MatchProvider() bool
	Init() error
	GetCredentialsForNacosClient() RamContext
}

type RamRoleArnCredentialProvider added in v1.4.3

type RamRoleArnCredentialProvider struct {
	// contains filtered or unexported fields
}

func (*RamRoleArnCredentialProvider) GetCredentialsForNacosClient added in v1.4.3

func (provider *RamRoleArnCredentialProvider) GetCredentialsForNacosClient() RamContext

func (*RamRoleArnCredentialProvider) Init added in v1.4.3

func (provider *RamRoleArnCredentialProvider) Init() error

func (*RamRoleArnCredentialProvider) MatchProvider added in v1.4.3

func (provider *RamRoleArnCredentialProvider) MatchProvider() bool

type RequestResource added in v1.4.3

type RequestResource struct {
	// contains filtered or unexported fields
}

func BuildConfigResource added in v1.4.3

func BuildConfigResource(tenant, group, dataId string) RequestResource

func BuildConfigResourceByRequest added in v1.4.3

func BuildConfigResourceByRequest(request rpc_request.IRequest) RequestResource

func BuildNamingResource added in v1.4.3

func BuildNamingResource(namespace, group, serviceName string) RequestResource

func BuildNamingResourceByRequest added in v1.4.3

func BuildNamingResourceByRequest(request rpc_request.IRequest) RequestResource

type ResourceInjector added in v1.4.3

type ResourceInjector interface {
	// contains filtered or unexported methods
}

type SecurityProxy added in v1.4.3

type SecurityProxy struct {
	Clients []AuthClient
}

func NewSecurityProxy added in v1.4.3

func NewSecurityProxy(clientCfg constant.ClientConfig, serverCfgs []constant.ServerConfig, agent http_agent.IHttpAgent) SecurityProxy

func NewSecurityProxyWithRamCredentialProvider added in v1.4.3

func NewSecurityProxyWithRamCredentialProvider(clientCfg constant.ClientConfig, serverCfgs []constant.ServerConfig, agent http_agent.IHttpAgent, provider RamCredentialProvider) SecurityProxy

func (*SecurityProxy) AutoRefresh added in v1.4.3

func (sp *SecurityProxy) AutoRefresh(ctx context.Context)

func (*SecurityProxy) GetSecurityInfo added in v1.4.3

func (sp *SecurityProxy) GetSecurityInfo(resource RequestResource) map[string]string

func (*SecurityProxy) Login added in v1.4.3

func (sp *SecurityProxy) Login()

func (*SecurityProxy) UpdateServerList added in v1.4.3

func (sp *SecurityProxy) UpdateServerList(serverList []constant.ServerConfig)

type StsTokenCredentialProvider added in v1.4.3

type StsTokenCredentialProvider struct {
	// contains filtered or unexported fields
}

func (*StsTokenCredentialProvider) GetCredentialsForNacosClient added in v1.4.3

func (provider *StsTokenCredentialProvider) GetCredentialsForNacosClient() RamContext

func (*StsTokenCredentialProvider) Init added in v1.4.3

func (provider *StsTokenCredentialProvider) Init() error

func (*StsTokenCredentialProvider) MatchProvider added in v1.4.3

func (provider *StsTokenCredentialProvider) MatchProvider() bool

Jump to

Keyboard shortcuts

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