- Add support for assuming roles from web identities (#62).
- Allow connection to empty regions (h/t @namelessjon, @lawremi)
- Prioritize the
profile
argument over env vars inlocate_credentials()
- Add argument for computing signed body as part of the signature (#59)
- Fix failure to install package with partial credentials file (h/t @stelsemeyer, #39)
- Improve parsing of config files
- Fix additional output when multiple profiles exist (@muschellij2, #42).
- New Maintainer: @jon-mago
- Fix use of file system credentials (Thanks to @lgjohnson)
- Fix use of ECS metadata (Requires aws.ec2metadata >= 0.1.6)
- Rewrite some internals and tests
- Removed
locate_credentials()
call from internalsignature_v4()
function. (#33) signature_v4_auth()
andsignature_v2_auth()
gain aforce_credentials
argument. Ifforce_credentials = TRUE
, user-supplied values are used and no call tolocate_credentials()
is made. (#33)
- Allow use of ECS metadata where available. (h/t @jon-mago #23, #30)
- Incorporated standard environment variables
AWS_SHARED_CREDENTIALS_FILE
andAWS_PROFILE
into code as appropriate and tweakedlocate_credentials()
accordingly. signature_v4_auth()
andsignature_v2_auth()
now returns all inputs to facilitate using the return value in constructing an HTTP request.- Updated documentation.
- Fixed a bug in the default
datetime
argument in several functions. (#28, h/t @yansonz)
- Removed some tests from execution on CRAN.
read_credentials()
now trims excess whitespace from profile names. (#22, h/t Paul Ingles)locate_credentials()
returnsregion = default_region
even when no other credentials are found.canonical_request()
now correctly trims whitespace.- The test suite was updated substantially, though not all tests run on CRAN.
- On namespace load, the package now checks for the presence of environment variables and, if absent, attempts to call
use_credentials()
(with defaults) to that behavior is more similar to other AWS client libraries. (cloudyr/aws.s3#184, h/t Dan Tenenbaum) - The
profile
argument ofuse_credentials()
now defaults toSys.getenv("AWS_PROFILE", "default")
for consistency with other AWS client libraries.
locate_credentials()
now attempts to look in instance metadata for a region, when called from an EC2 instance. (see cloudyr/aws.s3#151)- The set of fall backs for values of
region
have been standardized and documented forlocate_credentials()
. - Updated documentation to describe the need for aws.ec2metadata on EC2 instances.
signature_v4_auth()
andsignature_v2_auth()
now both return aRegion
value in their response list, as identified bylocate_credentials()
.
- Fixed a bug related to extracting credentials from environment variables. (cloudyr/aws.s3#142, cloudyr/aws.s3#143)
- Fixed a bug related to extracting credentials from EC2 instance metadata (cloudyr/aws.s3#144, h/t Daniele Rapati, Will Bowditch)
- Bumped aws.ec2metadata suggestion to 0.1.2.
- Fixed a bug in
locate_credentials()
caused by trying to retrieve EC2 instance metadata from a non-EC2 machine on which the aws.ec2metadata package was installed. - Expanded test suite to cover more of
locate_credentials()
behavior.
- CRAN Release.
- Added some minor tests.
- Changed the precedence of credential sources to: user-supplied values, EC2 instance metadata, environment variables, local credentials file, and global credentials file. (#11)
- Added a
locate_credentials()
function to walk through a hierarchy of possible credential locations, beginning with user-supplied values, then environment variables, local then global credentials ".aws/credentials" files, and finally (if applicable) an EC2 role for the currently running instance. (#11)
- Modified
read_credentials()
to allow key-value pairs of any form:KEY=VALUE
,KEY = VALUE
,KEY= VALUE
,KEY =VALUE
. (#15, h/t David Severski)
- Corrected the default timestamp format in
signature_v2_auth()
.
read_credentials()
now looks for the credentials file in a more reasonable location on Windows (#12/#13, h/t user:kadrach)- roxygenized the documentation (and reorganized the source files slightly). (#9)
- Added support for signing requests (using V4 signatures) with temporary security tokens.
- Modified some default arguments to correct unintended behavior. These should not affect any previously correct signing code.
- Added functions
read_credentials()
anduse_credentials()
to access AWS access credentials stored in.aws/credentials
files.
- Further fixes to the handling of default arguments from environment variables.
- Fixed the handling of default arguments from environment variables.
- Added support for (legacy) AWS Signature Version 2.
canonical_request()
now sets C collate order to properly order query argument and header names across platforms.
- Coerce query string arguments to character before passing to
URLencode()
. (#5)
- Add standard AWS test suite: http://docs.aws.amazon.com/general/latest/gr/signature-v4-test-suite.html. (#2)
- Expose and set default key, secret, and region values in
signature_v4_auth
.
- Fix bug in request body hashing for non-character request bodies (#3).
- Allow request body has to be generated from file without loading into memory.
- Include patched version of
utils::URLencode
that correctly encodes URLs per RFC 3986. - Initial release.