S3Storage.php
S3.php
an S3 compatible data backend for PrivateBin with CEPH/RadosGW in mind
see https://docs.ceph.com/en/latest/radosgw/s3/php/
based on lib/Data/GoogleCloudStorage.php from PrivateBin version 1.5.2
-
link
-
https://github.com/PrivateBin/PrivateBin
-
copyright
-
2022 Felix J. Ogris (https://ogris.de/)
-
license
-
https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
-
version
-
1.4.1
Installation:
- Make sure you have composer.lock and composer.json in the document root of your PasteBin
- If not, grab a copy from https://github.com/PrivateBin/PrivateBin
- As non-root user, install the AWS SDK for PHP:
composer require aws/aws-sdk-php
(On FreeBSD, install devel/php-composer2 prior, e.g.: make -C /usr/ports/devel/php-composer2 install clean)
- In cfg/conf.php, comment out all [model] and [model_options] settings
- Still in cfg/conf.php, add a new [model] section:
[model]
class = S3Storage
- Add a new [model_options] as well, e.g. for a Rados gateway as part of your CEPH cluster:
[model_options]
region = ""
version = "2006-03-01"
endpoint = "https://s3.my-ceph.invalid"
use_path_style_endpoint = true
bucket = "my-bucket"
prefix = "privatebin" (place all PrivateBin data beneath this prefix)
accesskey = "my-rados-user"
secretkey = "my-rados-pass"
Interfaces, Classes, Traits and Enums
- S3Storage
- AbstractData