swisnl/flysystem-encrypted

Flysystem适配器加密装饰器

2.1.0 2023-02-16 20:04 UTC

This package is auto-updated.

Last update: 2024-09-16 23:30:57 UTC


README

Latest Version on Packagist Software License Buy us a tree Build Status Coverage Status Quality Score Total Downloads Made by SWIS

此Flysystem适配器是一个透明的装饰器,它使用Illuminate Encrypter来加密/解密文件。

安装

通过Composer

$ composer require swisnl/flysystem-encrypted

注意:如果你使用Flysystem 1,请使用此适配器的1.x版本。

用法

use Illuminate\Encryption\Encrypter;
use League\Flysystem\Filesystem;
use League\Flysystem\Adapter\Local;
use Swis\Flysystem\Encrypted\EncryptedFilesystemAdapter;

// Create the adapter
$localAdapter = new Local('/path/to/root');

// Create the encrypter
$encrypter = new Encrypter('key', 'cipher');

// Decorate the adapter
$adapter = new EncryptedFilesystemAdapter($localAdapter, $encrypter);

// And use that to create the file system
$filesystem = new Filesystem($adapter);

已知限制

  1. 加密数据的大小取决于你加密的内容,大约增加30-40%。
  2. 你可以使用此适配器与流一起使用,但内部它们总是被转换为字符串,因为需要一次性加密/解密整个文件内容。这需要相当多的内存,因此不建议对此适配器用于大型文件。

变更日志

请参阅CHANGELOG以获取有关最近更改的更多信息。

测试

$ composer test

贡献

请参阅CONTRIBUTINGCODE_OF_CONDUCT以获取详细信息。

安全

如果你发现任何与安全相关的问题,请通过security@swis.nl发送电子邮件,而不是使用问题跟踪器。

致谢

许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。

此包是Treeware。如果您在生产中使用它,那么我们要求您为世界买一棵树以感谢我们的工作。通过为Treeware森林做出贡献,您将为当地家庭创造就业机会并恢复野生动物栖息地。

SWIS ❤️ 开源

SWIS是荷兰莱顿的一家网络公司。我们喜欢与开源软件合作。