DO - Spaces

Unterstütze HackTricks

Grundlegende Informationen

DigitalOcean Spaces sind Objektspeicherdienste. Sie ermöglichen es Benutzern, große Datenmengen zu speichern und bereitzustellen, wie Bilder und andere Dateien, auf skalierbare und kosteneffiziente Weise. Spaces können über das DigitalOcean-Kontrollpanel oder die DigitalOcean-API zugegriffen werden und sind in andere DigitalOcean-Dienste wie Droplets (virtuelle private Server) und Load Balancer integriert.

Zugriff

Spaces können öffentlich (jeder kann von Internet darauf zugreifen) oder privat (nur autorisierte Benutzer) sein. Um auf die Dateien eines privaten Spaces außerhalb des Kontrollpanels zuzugreifen, müssen wir einen Access Key und ein Secret generieren. Dies sind ein Paar zufälliger Token, die als Benutzername und Passwort dienen, um Zugriff auf deinen Space zu gewähren.

Eine URL eines Spaces sieht so aus: https://uniqbucketname.fra1.digitaloceanspaces.com/ Beachte die Region als Subdomain.

Selbst wenn der Space öffentlich ist, können Dateien darin privat sein (du kannst nur mit Anmeldedaten darauf zugreifen).

Jedoch, selbst wenn die Datei privat ist, ist es von der Konsole aus möglich, eine Datei mit einem Link wie https://fra1.digitaloceanspaces.com/uniqbucketname/filename?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=DO00PL3RA373GBV4TRF7%2F20221213%2Ffra1%2Fs3%2Faws4_request&X-Amz-Date=20221213T121017Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=6a183dbc42453a8d30d7cd2068b66aeb9ebc066123629d44a8108115def975bc für einen bestimmten Zeitraum zu teilen:

Aufzählung

# Unauthenticated
## Note how the region is specified in the endpoint
aws s3 ls --endpoint=https://fra1.digitaloceanspaces.com --no-sign-request s3://uniqbucketname

# Authenticated
## Configure spaces keys as AWS credentials
aws configure
AWS Access Key ID [None]: <spaces_key>
AWS Secret Access Key [None]: <Secret>
Default region name [None]:
Default output format [None]:

## List all buckets in a region
aws s3 ls --endpoint=https://fra1.digitaloceanspaces.com

## List files inside a bucket
aws s3 ls --endpoint=https://fra1.digitaloceanspaces.com s3://uniqbucketname

## It's also possible to generate authorized access to buckets from the API
Unterstütze HackTricks

Last updated