iam

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2023 License: MIT Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const (
	BasicDateFormat     = "20060102T150405Z"
	Algorithm           = "SDK-HMAC-SHA256"
	HeaderXDate         = "X-Sdk-Date"
	HeaderHost          = "host"
	HeaderAuthorization = "Authorization"
	HeaderContentSha256 = "X-Sdk-Content-Sha256"
)

Variables

This section is empty.

Functions

func AuthHeaderValue

func AuthHeaderValue(signature, accessKey string, signedHeaders []string) string

Get the finalized value for the "Authorization" header. The signature parameter is the output from SignStringToSign

func CanonicalHeaders

func CanonicalHeaders(r *DefaultHttpRequest, signerHeaders []string) string

CanonicalHeaders

func CanonicalQueryString

func CanonicalQueryString(r *DefaultHttpRequest) string

CanonicalQueryString

func CanonicalRequest

func CanonicalRequest(r *DefaultHttpRequest, signedHeaders []string) (string, error)

func CanonicalURI

func CanonicalURI(r *DefaultHttpRequest) string

CanonicalURI returns request uri

func HexEncodeSHA256Hash

func HexEncodeSHA256Hash(body []byte) (string, error)

HexEncodeSHA256Hash returns hexcode of sha256

func Sign

func Sign(r *DefaultHttpRequest, ak string, sk string) (map[string]string, error)

SignRequest set Authorization header

func SignStringToSign

func SignStringToSign(stringToSign string, signingKey []byte) (string, error)

Create the HWS Signature.

func SignedHeaders

func SignedHeaders(headers map[string]string) []string

SignedHeaders

func StringToSign

func StringToSign(canonicalRequest string, t time.Time) (string, error)

Create a "String to Sign".

Types

type DefaultHttpRequest

type DefaultHttpRequest struct {
	Endpoint string
	Path     string
	Method   string

	QueryParams map[string]interface{}
	// pathParams   map[string]string
	HeaderParams map[string]string
	// formParams   map[string]def.FormData
	Body []byte
}

func NewGetRequest

func NewGetRequest(region string) *DefaultHttpRequest

func (*DefaultHttpRequest) CanonicalMapQueryParams

func (httpRequest *DefaultHttpRequest) CanonicalMapQueryParams(key string, value reflect.Value) []map[string]string

func (*DefaultHttpRequest) CanonicalSliceQueryParamsToMulti

func (httpRequest *DefaultHttpRequest) CanonicalSliceQueryParamsToMulti(value reflect.Value) []string

func (*DefaultHttpRequest) DoGetRequest

func (httpRequest *DefaultHttpRequest) DoGetRequest(auth, timestamp string) ([]byte, error)

func (*DefaultHttpRequest) GetUserId

func (r *DefaultHttpRequest) GetUserId(accesskey, secretkey string) (string, error)

func (*DefaultHttpRequest) GetUserName

func (r *DefaultHttpRequest) GetUserName(accesskey, secretkey string) (string, error)

type Driver added in v0.0.9

type Driver struct {
	Auth     basic.Credentials
	Regions  []string
	Username string
	Password string
}

func (*Driver) AddUser added in v0.0.9

func (d *Driver) AddUser()

func (*Driver) DelUser added in v0.0.9

func (d *Driver) DelUser()

func (*Driver) GetIAMUser added in v0.0.9

func (d *Driver) GetIAMUser(ctx context.Context) ([]schema.User, error)

Jump to

Keyboard shortcuts

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