gsts

Obtain and store AWS STS credentials to interact with Amazon services by authenticating via G Suite SAML.

MIT License

Downloads
262
Stars
201
Committers
14

Bot releases are hidden (Show)

gsts - v5.0.4 Latest Release

Published by ruimarinho 10 months ago

Changelog

  • Bump dependencies.
  • Fix engines.node version constraint on package.json.
gsts - v5.0.0

Published by ruimarinho over 1 year ago

This version introduces a major shift of gsts to a credential_process provider - so much, in fact, that its internal structure has been completely adapted to behave like one by default.

As part of this refactor, there are a number of breaking changes too.

Breaking Changes

  • gsts is now a credential_process provider and should not called manually anymore.

    The ~/.aws/config should similar to the below:

    [default]
    credential_process = gsts --idp-id=12345 --sp-id=67890
    
  • Credentials are no longer stored under ~/.aws/config but instead under gsts own cache directory (~/Library/Caches/gsts on macOS, %LOCALAPPDATA%\gsts\Cache on Windows and ~/.cache/gsts on Linux) .

  • All command line parameters are now overridable by corresponding environment variables with the GSTS_ prefix.

  • Remove --google-* aliases.

  • Remove support for node < 18.

  • Daemon support has been removed in favor of the credential_process setup.

  • Playwright-specific parameters (--engine-executable-path, --engine) have had --playwright added to them to make it more explicit on what they achieve (--playwright-engine-executable-path and --playwright-engine).

New Features

  • Add support for cacheless operation mode with --no-credentials-cache.
  • Add support for processing the following AWS CLI variables:
    • AWS_REGION
    • AWS_DEFAULT_REGION
    • AWS_PROFILE
  • Add support for configuring gsts under ~/.aws/config (or any other directory configured via $AWS_CONFIG_FILE).
  • Add support for setting the playwright engine channel via --playwright-engine-channel.
  • Store SAML assertion in cache for further automation power.

Improvements

  • Migrated to AWS SDK v3.
  • Fix headless hang when Google forces interactive login mode.
  • Logging has been reworked to make gsts a lot less verbose and respect non-TTY sessions more accurately.
  • Set permissions for credentials file for read-write to the owner only (600).

Notable Updates

gsts - v2.4.2

Published by ruimarinho about 4 years ago

Changelog

  • Add note about reported aws-cli workaround
  • Fix mkdirp issues on Windows platforms
gsts - v2.4.1

Published by ruimarinho over 4 years ago

Changelog

Maintenance release

  • Fix a failing test when testing JSON output.
gsts - v2.4.0

Published by ruimarinho over 4 years ago

Changelog

gsts - v2.3.2

Published by ruimarinho over 4 years ago

Changelog

Maintenance release.

  • Add missing puppeteer-device-viewport-plugin to package.json.
gsts - v2.3.1

Published by ruimarinho over 4 years ago

Changelog

  • Minor tweaks to run on node v8. This is not a future guarantee that node < 10 will continue to be supported.
  • Improvements to puppeteer's stealth mode.
gsts - v2.3.0

Published by ruimarinho over 4 years ago

Changelog

  • Fix issue with session validation when a custom role ARN is not set
  • Add an improved iframe stealth plugin to make puppeteer more resilient
gsts - v2.3.0-beta.3

Published by ruimarinho over 4 years ago

Changelog

  • Add workaround attempt to avoid duplicate email insertion on login page.
gsts - v2.3.0-beta.2

Published by ruimarinho over 4 years ago

Changelog

  • Automatically fetch new session credentials if role ARN changes
  • Use more reliable method of detecting max role session duration
  • Always return control to the terminal in case an unhandled rejection occurs
  • Add support for AWS China and AWS GovCloud (US) ARNs
gsts - v2.3.0-beta.1

Published by ruimarinho over 4 years ago

Changelog

  • Allow overriding session duration. By default, gsts will use the IDP-provided session duration, but the role may have a custom MaxSessionDuration setting. In these situations, gsts will attempt to fetch this property and make sure that the requested SessionDuration from the STS service never exceeds it.
  • Make daemonizer dynamically aware of program arguments
  • Fix console command throwing error
gsts - v1.0.0

Published by ruimarinho over 4 years ago

Changelog

  • Initial implementation of AWS STS login via Google SSO using puppeteer
gsts - v1.0.1

Published by ruimarinho over 4 years ago

Changelog

  • Whitelist further URLs used for Google SSO
  • Bump dependencies
gsts - v1.0.2

Published by ruimarinho over 4 years ago

Changelog

  • Use binary name to spawn child
gsts - v2.0.0

Published by ruimarinho over 4 years ago

Changelog

  • Revamp documentation and new daemon mode
  • Add project logo
gsts - v2.0.1

Published by ruimarinho over 4 years ago

Changelog

  • Make sure the global gsts binary is called when going headful
gsts - v2.0.2

Published by ruimarinho over 4 years ago

Changelog

  • Maintenance release to add a missing file (logger.js) to the npm package
gsts - v2.0.3

Published by ruimarinho over 4 years ago

Changelog

  • Add PATH environment to generated plist
gsts - v2.0.4

Published by ruimarinho over 4 years ago

Changelog

  • Use process.cwd() instead of relying on PATH
  • Catch more errors when closing the browser UI
  • Passthrough --clean and force re-authentication
  • Add logging for cleaning up the session directory
  • Skip parsing credentials if they are not available
gsts - v2.0.5

Published by ruimarinho over 4 years ago

Changelog

  • Revert usage of process.cwd() instead of relying on PATH
Package Rankings
Top 8.17% on Proxy.golang.org
Top 10.6% on Npmjs.org
Related Projects