credentials

package
v0.0.0-...-ddc0b61 Latest Latest
Warning

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

Go to latest
Published: Jul 22, 2026 License: Apache-2.0 Imports: 4 Imported by: 27

Documentation

Index

Constants

View Source
const (
	// CredentialsIDQueryParameterName is the name of GET query parameter for the task ID.
	CredentialsIDQueryParameterName = "id"

	// CredentialsPath is the path to the credentials handler.
	CredentialsPath = V2CredentialsPath

	V1CredentialsPath = "/v1/credentials"
	V2CredentialsPath = "/v2/credentials"

	// ApplicationRoleType specifies the credentials that are to be used by the
	// task itself
	ApplicationRoleType = "TaskApplication"

	// ExecutionRoleType specifies the credentials used for non task application
	// uses
	ExecutionRoleType = "TaskExecution"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type IAMRoleCredentials

type IAMRoleCredentials struct {
	CredentialsID   string `json:"-"`
	RoleArn         string `json:"RoleArn"`
	AccessKeyID     string `json:"AccessKeyId"`
	SecretAccessKey string `json:"SecretAccessKey"`
	SessionToken    string `json:"Token"`
	// Expiration is a string instead of a timestamp. This is to avoid any loss of context
	// while marshalling/unmarshalling this field in the agent. The agent just echo's
	// whatever is sent by the backend.
	Expiration string `json:"Expiration"`
	// RoleType distinguishes between TaskRole and ExecutionRole for the
	// credentials that are sent from the backend
	RoleType string `json:"-"`
}

IAMRoleCredentials is used to save credentials sent by ACS

func IAMRoleCredentialsFromACS

func IAMRoleCredentialsFromACS(roleCredentials *ecsacs.IAMRoleCredentials, roleType string) IAMRoleCredentials

IAMRoleCredentialsFromACS translates ecsacs.IAMRoleCredentials object to api.IAMRoleCredentials

func (*IAMRoleCredentials) GenerateCredentialsEndpointRelativeURI

func (roleCredentials *IAMRoleCredentials) GenerateCredentialsEndpointRelativeURI() string

GenerateCredentialsEndpointRelativeURI generates the relative URI for the credentials endpoint, for a given task id.

type Manager

type Manager interface {
	SetTaskCredentials(*TaskIAMRoleCredentials) error
	GetTaskCredentials(string) (TaskIAMRoleCredentials, bool)
	RemoveCredentials(string)
	IsCredentialsPending(string) bool
	AddKnownCredentialsID(string)
}

Manager is responsible for saving and retrieving credentials. A single instance of the credentials manager is created in the agent, and shared between the task engine, acs and credentials handlers

func NewManager

func NewManager() Manager

NewManager creates a new credentials manager object

type TaskIAMRoleCredentials

type TaskIAMRoleCredentials struct {
	ARN                string
	IAMRoleCredentials IAMRoleCredentials
}

TaskIAMRoleCredentials wraps the task arn and the credentials object for the same

func (*TaskIAMRoleCredentials) GetIAMRoleCredentials

func (role *TaskIAMRoleCredentials) GetIAMRoleCredentials() IAMRoleCredentials

GetIAMRoleCredentials returns the IAM role credentials in the task IAM role struct

Directories

Path Synopsis
Package imds provides an IMDS credentials scanner that retrieves task credentials from IMDS.
Package imds provides an IMDS credentials scanner that retrieves task credentials from IMDS.
mocks
Package mock_imds is a generated GoMock package.
Package mock_imds is a generated GoMock package.
Package mock_credentials is a generated GoMock package.
Package mock_credentials is a generated GoMock package.

Jump to

Keyboard shortcuts

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