In dieser Anleitung erfähren Sie, wie Sie die AWS CLI mit einem benutzerdefinierten S3-Endpunkt wie https://a1.storagecenter.ch
verwenden.
AWS CLI installieren
Stelle sicher, dass die AWS CLI auf deinem System installiert ist. Falls nicht, laden sie von der offiziellen AWS-Website herunter:
AWS CLI Installation
Überprüfen sie die Installation mit:
aws --version
Zugangsdaten bereitstellen
Sie benötigen einen Access Key und einen Secret Key, um mit dem S3-kompatiblen Dienst zu verbinden. Diese erhalten Sie im Storagacenter Kundenportal.
Konfiguration starten
Führen Sie den folgenden Befehl aus, um die AWS CLI zu konfigurieren:
aws configure
Zugangsdaten eingeben
Geben Sie die folgenden Informationen ein:
ch-north
). Dies ist erforderlich, auch wenn Sie einen benutzerdefinierten Endpunkt verwenden.json
, text
oder table
).Um Befehle an den benutzerdefinierten Endpunkt https://a1.storagecenter.ch
zu senden, verwenden Sie den Parameter --endpoint-url
.
Bitte eigene Bucketnamen verwenden. Bucketnamen sind einmalig und können nicht mehrfach verwendet werden.
Erstellen Sie einen neuen Bucket mit dem folgenden Befehl:
aws --endpoint-url=https://a1.storagecenter.ch s3api create-bucket --bucket mein-bucket-name
mein-bucket-name
mit einem eindeutigen Namen für deinen Bucket.Laden Sie eine Datei in den Bucket hoch:
aws --endpoint-url=https://a1.storagecenter.ch s3api put-object --bucket mein-bucket-name --key pfad/zur/datei.txt --body lokale/datei.txt
--key
gibt den Pfad und Dateinamen im Bucket an.--body
gibt den Pfad zur lokalen Datei an.Laden Sie eine Datei aus dem Bucket herunter:
aws --endpoint-url=https://a1.storagecenter.ch s3api get-object --bucket mein-bucket-name --key pfad/zur/datei.txt lokale/datei.txt
Zeige eine Liste aller Buckets an:
aws --endpoint-url=https://a1.storagecenter.ch s3api list-buckets
Zeige eine Liste aller Objekte in einem Bucket an:
aws --endpoint-url=https://a1.storagecenter.ch s3api list-objects --bucket mein-bucket-name
Wenn Sie mehrere Konfigurationen verwenden möchten, können Sie Profile erstellen. Fügen Sie ein neues Profil hinzu:
aws configure --profil mein-profil
Verwenden Sie dann das Profil in ihren Befehlen:
aws --endpoint-url=https://a1.storagecenter.ch --profile mein-profil s3api list-buckets
Hilfe anzeigen
aws s3api help
Debug-Modus aktivieren
aws --endpoint-url=https://a1.storagecenter.ch --debug s3api list-buckets
Sie können den Endpunkt auch in der Konfigurationsdatei (~/.aws/config
) festlegen, um ihn nicht jedes Mal angeben zu müssen:
[profile mein-profil]
region = eu-central-1
output = json
s3 =
endpoint_url = https://a1.storagecenter.ch
Danach können Sie Befehle wie gewohnt ausführen:
aws --profile mein-profil s3api list-buckets
Mit dieser Anleitung können Sie die AWS CLI verwenden, um auf einen benutzerdefinierten S3-Endpunkt wie https://a1.storagecenter.ch
zuzugreifen. Sie können Buckets erstellen, Dateien hochladen und herunterladen sowie andere S3-Operationen durchführen.
Für weitere Informationen konsultiere die offizielle AWS CLI-Dokumentation:
AWS CLI Documentation
Object Lock ist eine Funktion in Amazon S3, die es ermöglicht, Objekte in einem Bucket vor Löschung oder Überschreibung zu schützen. Dies ist besonders nützlich für Compliance-Anforderungen, bei denen Daten für einen bestimmten Zeitraum unveränderlich bleiben müssen. Es gibt zwei Modi:
In dieser Anleitung erfahren Sie, wie Sie Object Lock mit der AWS CLI aktivieren und konfigurieren.
AWS CLI installiert und konfiguriert:
Stellen Sie sicher, dass die AWS CLI installiert und mit ihren Zugangsdaten konfiguriert ist.
Bucket-Versionierung aktiviert:
Object Lock erfordert, dass die Bucket-Versionierung aktiviert ist. Wenn Sie nicht aktiviert sind, wird sie automatisch aktiviert, sobald Object Lock aktiviert wird.
Object Lock muss beim Erstellen eines Buckets aktiviert werden. Es kann nicht nachträglich aktiviert werden.
Verwenden Sie den folgenden Befehl, um einen neuen Bucket mit aktiviertem Object Lock zu erstellen:
aws s3api create-bucket --bucket mein-bucket-name --region ch.north1 --object-lock-enabled-for-bucket
mein-bucket-name
mit dem Namen ihres Buckets.eu-central-1
mit der gewünschten AWS-Region.Nachdem der Bucket erstellt wurde, müssen Sie die Default Object Lock-Einstellungen konfigurieren. Diese Einstellungen gelten für alle neuen Objekte, die in den Bucket hochgeladen werden, sofern keine spezifischen Aufbewahrungseinstellungen angegeben werden.
Verwenden Sie den folgenden Befehl, um den Compliance Mode mit einer Aufbewahrungsdauer von 30 Tagen festzulegen:
aws s3api put-object-lock-configuration --bucket mein-bucket-name --object-lock-configuration '{
"ObjectLockEnabled": "Enabled",
"Rule": {
"DefaultRetention": {
"Mode": "COMPLIANCE",
"Days": 30
}
}
}'
mein-bucket-name
mit dem Namen ihres Buckets."Mode": "COMPLIANCE"
aktiviert den Compliance Mode."Days": 30
legt die Aufbewahrungsdauer auf 30 Tage fest.Sie können die Object Lock-Konfiguration des Buckets überprüfen, um sicherzustellen, dass sie korrekt festgelegt wurde:
aws s3api get-object-lock-configuration --bucket mein-bucket-name
Die Ausgabe sollte in etwa so aussehen:
{
"ObjectLockConfiguration": {
"ObjectLockEnabled": "Enabled",
"Rule": {
"DefaultRetention": {
"Mode": "COMPLIANCE",
"Days": 30
}
}
}
}
Wenn Sie ein Objekt in den Bucket hochladen, wird die Standard-Object Lock-Konfiguration angewendet. Sie können jedoch auch spezifische Aufbewahrungseinstellungen für ein einzelnes Objekt festlegen:
aws s3api put-object --bucket mein-bucket-name --key pfad/zur/datei.txt --body lokale/datei.txt --object-lock-mode COMPLIANCE --object-lock-retain-until-date "2023-11-01T00:00:00Z"
--object-lock-mode COMPLIANCE
aktiviert den Compliance Mode für dieses Objekt.--object-lock-retain-until-date
legt das Datum fest, bis zu dem das Objekt gesperrt ist (im ISO-8601-Format).Object Lock kann nicht deaktiviert werden:
Sobald Object Lock für einen Bucket aktiviert ist, kann es nicht mehr deaktiviert werden.
Compliance Mode ist streng:
Im Compliance Mode kann kein Benutzer (einschließlich Root-Benutzer) ein Objekt löschen oder überschreiben, bis der Aufbewahrungszeitraum abgelaufen ist.
Versionierung erforderlich:
Object Lock erfordert, dass die Bucket-Versionierung aktiviert ist. Wenn du sie nicht aktiviert hast, wird sie automatisch aktiviert, sobald Object Lock aktiviert wird.
Mit diesen Schritten haben Sie:
Object Lock ist eine leistungsstarke Funktion, um Daten vor versehentlicher oder böswilliger Löschung zu schützen. Weitere Informationen findest du in der offiziellen AWS-Dokumentation:
AWS Object Lock Documentation