abouvier / slim-access
Access control middleware for Slim framework
Installs: 47
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 3
Forks: 0
Open Issues: 0
pkg:composer/abouvier/slim-access
Requires
- php: >=5.5.0
- slim/slim: ~2.0
This package is auto-updated.
Last update: 2025-09-28 01:01:17 UTC
README
Access control middleware for Slim framework.
Supported formats
- IPv4 and IPv6 addresses
- CIDR notation
- all keyword
Installation
composer require abouvier/slim-access
Usage
Only accept requests from localhost and the 192.168.1.0/24 subnet (except for 192.168.1.42):
use \Slim\Middleware\Access; // ... $app = new \Slim\Slim(); // ... $app->add(new Access([ 'callback' => function () use ($app) { $app->halt(403, 'You Shall Not Pass!!!'); }, 'list' => [ '::1' => Access::ALLOW, '127.0.0.1' => Access::ALLOW, '192.168.1.42' => Access::DENY, '192.168.1.0/24' => Access::ALLOW, 'all' => Access::DENY // optional as "all" is already denied by default ] ])); // ... $app->run();
or:
$app = new \Slim\Slim(); // ... $access = new \Slim\Middleware\Access([ 'callback' => function () use ($app) { $app->halt(403, 'You Shall Not Pass!!!'); } ]); $access->allow('::1')->allow('127.0.0.1')->deny('192.168.1.42')->allow('192.168.1.0/24')->deny('all'); $app->add($access); // ... $app->run();