Package awssession provides a simple way to obtain AWS session.Session using GRAIL tickets.



    This section is empty.


    This section is empty.


    func NewConfigWithTicket

    func NewConfigWithTicket(ctx *context.T, ticketPath string) *aws.Config

      NewConfigWithTicket creates an AWS configuration using a GRAIL ticket. The returned configuration uses a Provider with a timeout of 10 seconds. The region will be set to 'us-west-2'.

      func NewWithTicket

      func NewWithTicket(ctx *context.T, ticketPath string, cfgs ...*aws.Config) (*session.Session, error)

        NewWithTicket creates an AWS session using a GRAIL ticket. The returned session uses a Provider with a timeout of 10 seconds. The region will be set to 'us-west-2' and can be overridden by passing an appropriate *aws.Config.


        type Provider

        type Provider struct {
        	// Ctx contains the Vanadium context used to make the call to ticket-server
        	// in response to calls to Retrieve(). Canceling the context will cause the
        	// calls to Retrieve() to fail and IsExpire() to always return true.
        	Ctx *context.T
        	// Timeout indicates what timeout to set for the Vanadium calls.
        	Timeout time.Duration
        	// Ticket contains the last GRAIL ticket retrieved by a call to Retrieve().
        	Ticket ticket.Ticket
        	// Expiration indicates when the AWS credentials will expire.
        	Expiration time.Time
        	// TicketPath indicates what Vanadium object name to use to retrieve the
        	// ticket.
        	TicketPath string
        	// ExpiryWindow allows triggering a refresh before the AWS credentials
        	// actually expire.
        	ExpiryWindow time.Duration

          Provider implements the aws/credentials.Provider interface using a GRAIL ticket.

          func (*Provider) IsExpired

          func (p *Provider) IsExpired() bool

            IsExpired implements the interface.

            func (*Provider) Retrieve

            func (p *Provider) Retrieve() (credentials.Value, error)

              Retrieve implements the interface.