Escher - HTTP request signing lib
Go implementation of the AWS4 compatible Escher HTTP request signing and authentication library.
Prerequisite
this will download the test cases for the escher implementation, and set in the env the required env key(s)
source .envrc
Run the tests
in 1.9:
go test ./...
in older go versions:
go test $(go list ./... | grep -v /vendor/)
About Escher
More details are available at our Escher documentation site.
Install
go get -u github.com/golang/dep/cmd/dep
dep ensure
ENV configuration
Configuration
Everything except the Credential scope is optional.
ESCHER_CONFIG
JSON string that can include the all the configuration parameters:
- credentialScope
- vendorKey
- algoPrefix
- hashAlgo
- authHeaderName
- dateHeaderName
ESCHER_ALGO_PREFIX
Set the used Algo prefix when config json not includes it
ESCHER_HASH_ALGO
set the hashAlgo when config json not includes it
ESCHER_VENDOR_KEY
set the vendorKey when config json not includes it
set the AUTH_HEADER_name when config json not includes it
set the DATE_HEADER_name when config json not includes it
ESCHER_CREDENTIAL_SCOPE
set the credentialScope when config json not includes it
KeyPool
KEY_POOL
JSON serialized array of map that contains credentials with the following keys definitions: