PHPackages                             jdavidbakr/signed-s3-filesystem - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. jdavidbakr/signed-s3-filesystem

Abandoned → [laravel/framework &gt;5.5](/?search=laravel%2Fframework%20%3E5.5)Library[File &amp; Storage](/categories/file-storage)

jdavidbakr/signed-s3-filesystem
===============================

Extension of the Laravel S3 filesystem to return signed URLs

1.0.1(8y ago)62.6k2MITPHPPHP ~5.6|~7.0

Since Nov 21Pushed 6y ago1 watchersCompare

[ Source](https://github.com/jdavidbakr/signed-s3-filesystem)[ Packagist](https://packagist.org/packages/jdavidbakr/signed-s3-filesystem)[ Docs](https://github.com/jdavidbakr/SignedS3Filesystem)[ RSS](/packages/jdavidbakr-signed-s3-filesystem/feed)WikiDiscussions master Synced yesterday

READMEChangelog (2)Dependencies (6)Versions (3)Used By (0)

Please use Storage::temporaryUrl() instead of this package
==========================================================

[](#please-use-storagetemporaryurl-instead-of-this-package)

As of Laravel 5.5, the `Storage` facade contains this functionality internally. Therefore, it is recommended to sign your URLs according to the way Laravel intends.

signed-s3-filesystem
====================

[](#signed-s3-filesystem)

[![Latest Version on Packagist](https://camo.githubusercontent.com/822c1dec47a894205b9d659625aef1dd47de310a4922f3c794baeb62a64adf62/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6a646176696462616b722f7369676e65642d73332d66696c6573797374656d2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/jdavidbakr/signed-s3-filesystem)[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)[![Total Downloads](https://camo.githubusercontent.com/51c2ba20739303fba490f8d6cbe8b716aab8525623732f7deefe4f3a385973d9/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6a646176696462616b722f7369676e65642d73332d66696c6573797374656d2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/jdavidbakr/signed-s3-filesystem)

This package extends Laravel's S3 filesystem driver to return signed URLs via the Storage::url() command.

Install
-------

[](#install)

Via Composer

```
$ composer require jdavidbakr/signed-s3-filesystem
```

Once installed, add the following to your providers array in cofig/app.php:

```
jdavidbakr\SignedS3Filesystem\SignedS3FilesystemServiceProvider::class,

```

This package makes use of the AWS facade, so be sure you have the following set in your providers array:

```
Aws\Laravel\AwsServiceProvider::class,

```

as well as in your alias array:

```
'AWS' => Aws\Laravel\AwsFacade::class,

```

You will also need to add the driver information to your config/filesystems.php file. This driver uses the same info as the S3 driver, with an additional parameter for the length of time until the signed URL will expire. If you do not specify an expiration time, URLs will default to expire 2 hours after being generated.

```
's3-signed' => [
    'driver' => 's3-signed',
    'key'    => 'your-key',
    'secret' => 'your-secret',
    'region' => 'your-region',
    'bucket' => 'your-bucket',
    'options' => [
    	'expiration'=>'time-to-expire-urls-in-seconds',
    ],
],

```

Because the expiration option is optional, and everything else acts the same as the standard S3 driver, you can alternatively just change the driver value of the existing s3 section to 's3-signed'.

Usage
-----

[](#usage)

Use this driver in the same manner as you would any other Laravel filesystem driver. The Storage::url() command will return a signed URL.

```
$signed_url = Storage::disk('s3-signed')->url('path-to-file');
```

Testing
-------

[](#testing)

```
$ composer test
```

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) and [CONDUCT](CONDUCT.md) for details.

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [J David Baker](https://github.com/jdavidbakr)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity22

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 50% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~332 days

Total

2

Last Release

3175d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/25177?v=4)[J David Baker](/maintainers/jdavidbakr)[@jdavidbakr](https://github.com/jdavidbakr)

---

Top Contributors

[![gausam](https://avatars.githubusercontent.com/u/958800?v=4)](https://github.com/gausam "gausam (1 commits)")[![jdavidbakr](https://avatars.githubusercontent.com/u/25177?v=4)](https://github.com/jdavidbakr "jdavidbakr (1 commits)")

---

Tags

jdavidbakrSignedS3Filesystem

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/jdavidbakr-signed-s3-filesystem/health.svg)

```
[![Health](https://phpackages.com/badges/jdavidbakr-signed-s3-filesystem/health.svg)](https://phpackages.com/packages/jdavidbakr-signed-s3-filesystem)
```

###  Alternatives

[illuminate/filesystem

The Illuminate Filesystem package.

15263.8M3.1k](/packages/illuminate-filesystem)[fleetbase/core-api

Core Framework and Resources for Fleetbase API

1232.2k16](/packages/fleetbase-core-api)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
