@alphatango/token-provider
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

ATSquad Token Provider

A simple library to resolve JWT tokens.

It uses AWS KMS to decrypt the client secret and then calls the specified token endpoint the retrieve JWT.

Using this library

Install the library.

yarn add @alphatango/token-provider

Token Provider

import axios from 'axios';
import TokenProvider from '@alphatango/token-provider';

const configuration = {
  clientId: 'CLIENT_ID',
  encryptedClientSecret: 'BASE64_KMS_ENCRYPTED_CLIENT_SECRET',
  audience: 'https://example.com/',
  tokenEndpoint: 'https://example.com/oauth/token'
};

let kmsClient = new aws.KMS({ region: 'eu-west-1' });
let tokenProvider = new TokenProvider({
  httpClient: axios.create(),
  kmsClient: kmsClient,
  tokenConfiguration: configuration
});

// recommended way to retrieve token (utilizes caching and takes care of token expiration)
let accessToken = await tokenProvider.getToken();

// or bypass caching and get new token
accessToken = await tokenProvider.getTokenWithoutCache();

Contribution

We value your input as part of direct feedback to us, by filing issues, or preferably by directly contributing improvements:

  1. Fork this repository
  2. Create a branch
  3. Contribute
  4. Pull request

Readme

Keywords

none

Package Sidebar

Install

npm i @alphatango/token-provider

Weekly Downloads

2

Version

1.0.1

License

MIT

Unpacked Size

8.51 kB

Total Files

7

Last publish

Collaborators

  • akincel
  • alphatango-deploy
  • dboerlage
  • thoean
  • wparad