Socket
Socket
Sign inDemoInstall

@aws-sdk/token-providers

Package Overview
Dependencies
6
Maintainers
5
Versions
178
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aws-sdk/token-providers


Version published
Maintainers
5
Install size
476 kB
Created

Package description

What is @aws-sdk/token-providers?

@aws-sdk/token-providers is a package within the AWS SDK for JavaScript that provides various token providers for acquiring and managing tokens used for authentication and authorization with AWS services.

What are @aws-sdk/token-providers's main functionalities?

FromSSOToken

This feature allows you to create a token provider that retrieves tokens from AWS Single Sign-On (SSO). The code sample demonstrates how to configure the SSO token provider with a specific SSO session.

const { fromSSOToken } = require('@aws-sdk/token-providers');
const ssoTokenProvider = fromSSOToken({
  ssoClient: new SSOClient({ region: 'us-west-2' }),
  ssoSession: 'my-sso-session'
});

FromWebIdentityToken

This feature allows you to create a token provider that retrieves tokens from a web identity token file. The code sample demonstrates how to configure the web identity token provider with a specific role ARN and token file path.

const { fromWebIdentityToken } = require('@aws-sdk/token-providers');
const webIdentityTokenProvider = fromWebIdentityToken({
  roleArn: 'arn:aws:iam::123456789012:role/WebIdentityRole',
  webIdentityTokenFile: '/path/to/token'
});

FromCognitoIdentity

This feature allows you to create a token provider that retrieves tokens from Amazon Cognito Identity. The code sample demonstrates how to configure the Cognito identity token provider with a specific identity pool ID and logins.

const { fromCognitoIdentity } = require('@aws-sdk/token-providers');
const cognitoIdentityProvider = fromCognitoIdentity({
  identityPoolId: 'us-west-2:example-pool-id',
  logins: {
    'cognito-idp.us-west-2.amazonaws.com/us-west-2_example': 'example-token'
  }
});

Other packages similar to @aws-sdk/token-providers

Changelog

Source

3.609.0 (2024-07-02)

Features

  • client-ec2: Documentation updates for Elastic Compute Cloud (EC2). (c155b9e)
  • client-fms: Increases Customer API's ManagedServiceData length (b5ca023)
  • client-s3: Added response overrides to Head Object requests. (ac9f3d2)

Readme

Source

@aws-sdk/token-providers

NPM version NPM downloads

A collection of all token providers. The token providers should be used when the authorization type is going to be token based. For example, the bearer authorization type set using httpBearerAuth trait in Smithy.

Static Token Provider

import { fromStatic } from "@aws-sdk/token-providers";

const token = { token: "TOKEN" };
const staticTokenProvider = fromStatic(token);

const staticToken = await staticTokenProvider(); // returns { token: "TOKEN" }

SSO Token Provider

import { fromSso } from "@aws-sdk/token-providers";

// returns token from SSO token cache or ssoOidc.createToken() call.
const ssoToken = await fromSso();

Token Provider Chain

import { nodeProvider } from "@aws-sdk/token-providers";

// returns token from default providers.
const token = await nodeProvider();

Development

This package contains a minimal copy of the SSO OIDC client, instead of relying on the full client, which would cause a circular dependency.

When regenerating the bundled version of the SSO OIDC client, run the esbuild.js script and then make the following changes:

  • Remove any dependency of the generated client on the credential chain such that it would create a circular dependency back to this package. Because we only need the CreateTokenCommand, the client, and this command's associated Exceptions, it is possible to remove auth dependencies.
  • Ensure all required packages are declared in the package.json of token-providers.

Keywords

FAQs

Last updated on 02 Jul 2024

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

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc