harlam/auth-secret-keys

Simple secret keys authentication service

v2.0 2020-01-20 10:16 UTC

This package is auto-updated.

Last update: 2024-05-07 21:29:39 UTC


README

Usage:

/** Initialize keys storage */
$keysStorage = new KeysStorage('/tmp/storage/secret-keys');

$keysManager = new KeysManager($keysStorage, new BaseGenerator());

/* Validation max attempts (default 3) */
$keysManager->setValidationMaxAttempts(5);

/* Secret key lifetime (default 300 sec.) */
$keysManager->setValidationMaxLifetime(300);

/* Secret key generation request interval (default 60 sec.) */
$keysManager->setRequestInterval(15);

/* Static keys (default empty) */
$keysManager->setPresetKeys(['owner' => 'static-secret']);

/** Generate secret key with owner */
$key = $keysManager->generate('owner');

/** Or validate secret key */
$key = (new KeyEntity)
    ->setOwner('owner')
    ->setKey('secret');

$keysManager->validate($key);