Socket
Book a DemoInstallSign in
Socket

aws-get-credentials

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

aws-get-credentials

Create an AWS credentials instance from local credentials

2.0.0
latest
Source
npmnpm
Version published
Maintainers
1
Created
Source

aws-get-credentials

Create an AWS credentials instance from local credentials

npm version Build Status

About

Fetch a credentials instance from your local machine using a very simple fetcher method.

Avoid hardcoding and commiting secure information by using AWS' credentials file for configuration. Some AWS client libraries automatically read this file, but some do not. aws-get-credentials provides a quick and easy method to retrieve a credential file's config.

Usage

The aws-get-credentials module exports two methods:

  • getAWSCredentials - Fetch an AWS Credentials instance from local configuration
  • getAWSProfiles - Get an array of profile names available

Check out the API documentation for more information.

getAWSCredentials

The method getAWSCredentials takes two parameters:

getAWSCredentials(
    optionalProfileOverride,
    optionalPathOverride,
    useEnvironmentVariables = false
) // => Promise.<AWS.Credentials>

optionalProfileOverride is an optional override for the profile to use (defaults to an environment variable AWS_DEFAULT_PROFILE first, then "default" lastly). optionalPathOverride is an optional override for the path to the credentials file (defaults to an environment variable AWS_CREDENTIALS_PATH first, and then ~/.aws/credentials lastly).

Providing true for the 3rd parameter, "useEnvironmentVariables", tells getAWSCredentials to return a Credentials instance using the available environment variables instead of trying to read from the local credentials file.

Example

Firstly, import the function:

const { getAWSCredentials } = require("aws-get-credentials");

Then use its output (promise):

const s3 = require("s3"); // example library

getAWSCredentials("production")
    .then(function(credentials) {
        const s3Client = s3.createClient({
            s3Options: {
                credentials
            }
        });
        const syncOptions = {};
        const uploader = s3Client.uploadDir(syncOptions);
        return new Promise(function(resolve, reject) {
            uploader.on("error", reject);
            uploader.on("end", resolve);
        });
    });

getAWSProfiles

This method asynchronously fetches a list of profile names in the credentials file:

const { getAWSProfiles } = require("aws-get-credentials");

getAWSProfiles().then(profiles => {
    // [
    //     "company-prod",
    //     "company-stag",
    //     "default"
    // ]
});

Keywords

aws

FAQs

Package last updated on 05 Aug 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.