Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

als-token-manager

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

als-token-manager

Can be used for generating unique ids or maxAged tokens.

  • 1.0.1
  • latest
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

als-Token-Manager

Overview

The TokenManager is a Node.js utility for managing time-limited tokens, which can be used for session management or generating unique identifiers for specific tasks. It allows developers to generate tokens that expire after a specified duration and ensures that tokens are consistently manageable even across server restarts by saving the state to a file.

Installation

Install via npm:

npm install als-token-manager

Usage

Initialization

Create a new instance of the TokenManager by specifying optional parameters for maximum age, custom logger function, and path to save the token start time.

const TokenManager = require('als-token-manager');
const tokenManager = new TokenManager(maxAge, logger, filePath);
  • maxAge: Duration in milliseconds before a token expires. Default is 604800000 (7 days).
    • must be a positive number representing the token's maximum lifespan in milliseconds. If an invalid value is provided, an error is thrown.
  • logger: Custom logger function for error logging. Default is console.log.
    • should be a function that will handle logging. If a non-function value is provided, an error is thrown.
  • filePath: Path to save the initial start time of tokens. Default is './start'.
    • is expected to be a string indicating where to save the token's start time. If a non-string value is provided, an error is thrown.

Generating a Token

To generate a new token:

const token = tokenManager.generateToken();
console.log(token); // Outputs the generated token

Validating a Token

Check if a token is valid:

const isValid = tokenManager.isValid(token);
console.log(isValid); // Outputs `true` if valid, otherwise `false`

Example

Here is a simple example to illustrate the creation and validation of a token:

const manager = new TokenManager(300000, console.error, './tokenStart');
const token = manager.generateToken();
console.log('Token:', token);
setTimeout(() => {
  console.log('Is valid:', manager.isValid(token)); // Should output `true` if not expired
}, 1000);

Advanced Configuration

  • Handle token persistence and recovery by using the filePath parameter to specify where the start time should be saved.
  • Customize logging for error tracking by passing a custom function to the logger parameter.

Keywords

FAQs

Package last updated on 01 Jun 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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc