7 Minuten Lesezeit
In diesem Abschnitt erfahren Sie, wie Sie in S3 Objekte mit verschiedenen Versionen hochladen und dabei unterschiedliche Object Lock-Richtlinien und Retention-Richtlinien festlegen können. Das Object Lock-Feature ermöglicht es Ihnen, Objekte vor versehentlichen Änderungen oder Löschungen zu schützen, während das Versioning die Speicherung verschiedener Versionen desselben Objekts ermöglicht.
Verwenden Sie den Befehl aws s3 cp
, um eine oder mehrere Versionen desselben Objekts in Ihr Bucket hochzuladen:
aws s3 cp <lokaler-dateipfad> s3://<bucketname>/<ziel-dateipfad> --endpoint-url=https://<endpoint>
Erklärung der Variablen:
Beispiel:
aws s3 cp mydocument.pdf s3://myversionedbucket/documents/mydocument.pdf --endpoint-url=https://s3.de-west-1.psmanaged.com
Verwenden Sie den folgenden Befehl, um Object Lock und Retention-Richtlinien für eine bestimmte Version des Objekts festzulegen:
aws s3api put-object-retention --bucket <bucketname> --key <ziel-dateipfad> --version-id <versions-id> --retention '{"Mode": "<retention-Modus>", "RetainUntilDate": "<zeitstempel>"}' --endpoint-url=https://<endpoint>
Erklärung der Variablen:
Beispiel:
aws s3api put-object-retention --bucket mylockedbucket --key folder/meinobjekt.pdf --version-id fe11c7b4-eeae-f76f-a6ff-1402ec8ef430 --retention '{"Mode": "GOVERNANCE", "RetainUntilDate": "2023-08-11T17:45:59Z"}' --endpoint-url=https://s3.de-west-1.psmanaged.com
Durch die Kombination von Object Lock und Versioning können Sie unterschiedliche Versionen desselben Objekts mit verschiedenen Schutzmaßnahmen versehen. Stellen Sie sicher, dass Sie die richtigen Werte für Object Lock, Versioning und Retention entsprechend Ihrer Anforderungen und Ihrer Konfiguration verwenden.
Um zu überprüfen, ob das Objekt mit Object Lock und den festgelegten Retention-Richtlinien gesichert ist, verwenden Sie den folgenden Befehl:
aws s3api get-object-retention --bucket <bucketname> --key <ziel-dateipfad> --version-id <versions-id> --endpoint-url=https://<endpoint>
Die Ausgabe des Befehls zeigt Ihnen die aktuelle Object Lock- und Retention-Richtlinie für das angegebene Objekt an. Dies kann Ihnen helfen, sicherzustellen, dass die gewünschten Schutzmaßnahmen korrekt angewendet wurden.
Bitte beachten Sie, dass die genauen Werte in der Ausgabe je nach Ihren Einstellungen variieren können. Stellen Sie sicher, dass die Ausgabe Ihren Erwartungen entspricht, um sicherzustellen, dass Ihre Object Lock- und Retention-Richtlinien korrekt konfiguriert sind.
{
"Retention": {
"Mode": "GOVERNANCE",
"RetainUntilDate": "2023-08-11T17:45:59+00:00"
}
}
Beispielausgabe bei einem Objekt, bei welcher kein Object-Lock gesetzt ist:
An error occurred (NoSuchObjectLockConfiguration) when calling the GetObjectRetention operation: The specified object does not have an ObjectLock configuration
In diesem Abschnitt erfahren Sie, wie Sie alle Objekte in einem Bucket standardmäßig mit einer Retention versehen können. Durch diese Maßnahme werden alle hochgeladenen Objekte automatisch mit einer festgelegten Object Lock-Retention geschützt.
Verwenden Sie den Befehl aws s3api put-object-lock-configuration
, um eine standardmäßige Object Lock-Retention für den gesamten Bucket festzulegen:
aws s3api put-object-lock-configuration --bucket <bucketname> --object-lock-configuration '{"ObjectLockEnabled": "Enabled", "Rule": {"DefaultRetention": {"Mode": "<retention-modus>", "Days": <tage> }}}' --endpoint-url=https://<endpoint-url>
Erklärung der Variablen:
Beispiel:
aws s3api put-object-lock-configuration --bucket mylockedbucket --object-lock-configuration '{"ObjectLockEnabled": "Enabled", "Rule": {"DefaultRetention": {"Mode": "GOVERNANCE", "Days": 1}}}' --endpoint-url=https://s3.de-west-1.psmanaged.com
Durch die Ausführung dieses Befehls wird eine standardmäßige Object Lock-Retention festgelegt, die für alle neu hochgeladenen Objekte in diesem Bucket angewendet wird. Die Objekte werden automatisch mit der festgelegten Retention geschützt, sobald sie hochgeladen werden. In diesem Beispiel würden die Objekte 1 Tag lang mit einem Governance Object-Lock versehen werden.
Verwenden Sie den Befehl aws s3api get-object-lock-configuration, um die aktuelle Bucket-Regel für die Object Lock-Retention auszulesen:
aws s3api get-object-lock-configuration --bucket <bucketname> --endpoint-url=https://<endpoint-url>
Erklärung der Variablen:
Beispiel:
aws s3api get-object-lock-configuration --bucket mylockedbucket --endpoint-url=https://s3.de-west-1.psmanaged.com
Beispielausgabe:
{
"ObjectLockConfiguration": {
"ObjectLockEnabled": "Enabled",
"Rule": {
"DefaultRetention": {
"Mode": "GOVERNANCE",
"Days": 1
}
}
}
}
Verwenden Sie den Befehl aws s3api put-object, um ein Objekt in das Bucket hochzuladen.
aws s3api put-object --bucket <bucketname> --key <ziel-dateipfad> --body <lokaler-dateipfad> --endpoint-url=https://<endpoint-url>
Erklärung der Variablen:
Beispiel:
aws s3api put-object --bucket mylockedbucket --key folder/meinobjekt.pdf --body /pfad/zu/meinobjekt.pdf --endpoint-url=https://s3.de-west
Um zu überprüfen, ob das Objekt mit Object Lock und den festgelegten Retention-Richtlinien gesichert ist, verwenden Sie den folgenden Befehl:
aws s3api get-object-retention --bucket <bucketname> --key <ziel-dateipfad> --endpoint-url=https://s3.de-west-1.psmanaged.com
Erklärung der Variablen:
Beispiel:
aws s3api get-object-retention --bucket mylockedbucket --key folder/meinobjekt.pdf --endpoint-url=https://s3.de-west-1.psmanaged.com
Durch das Aktivieren der standardmäßigen Object Lock-Retention können Sie sicherstellen, dass alle in das Bucket hochgeladenen Objekte automatisch mit der gewünschten Retention versehen werden. Stellen Sie sicher, dass Sie die korrekten Werte für die Retention-Modi und die Anzahl der Tage angeben, um Ihre Anforderungen zu erfüllen.
In diesem Abschnitt erfahren Sie, wie Sie die Retention Time eines Objekts mit aktiviertem Object Lock verlängern können.
Beginnen Sie damit, ein Objekt mit einer Beispielweise 1-stündigen Object-Lock-Governance Option hochzuladen.
aws s3api put-object --bucket <bucketname> --key <objekt-key> --body <lokaler-dateipfad> --endpoint-url=https://<endpoint-url> --object-lock-mode GOVERNANCE --object-lock-retain-until-date "$(date -u +"%Y-%m-%dT%H:%M:%SZ" -d "+1 hour")"
Erklärung der Variablen:
Beispiel:
aws s3api put-object --bucket mylockedbucket --key folder/meinobjekt.pdf --body /pfad/zu/meinobjekt.pdf --endpoint-url=https://s3.de-west-1.psmanaged.com --object-lock-mode GOVERNANCE --object-lock-retain-until-date "$(date -u +"%Y-%m-%dT%H:%M:%SZ" -d "+1 hour")"
Überprüfen Sie die aktuelle Retention des hochgeladenen Objekts.
aws s3api get-object-retention --bucket <bucketname> --key <objekt-key> --endpoint-url=https://<endpoint-url>
Erklärung der Variablen:
Beispiel:
aws s3api get-object-retention --bucket mylockedbucket --key folder/meinobjekt.pdf --endpoint-url=https://s3.de-west-1.psmanaged.com
Beispielausgabe:
{
"Retention": {
"Mode": "GOVERNANCE",
"RetainUntilDate": "2023-08-14T08:58:34+00:00"
}
}
Verlängern Sie die Retention des hochgeladenen Objekts um eine weitere Stunde.
aws s3api put-object-retention --bucket <bucketname> --key <objekt-key> --retention '{"Mode": "GOVERNANCE", "RetainUntilDate": "<neues-datum>"}' --endpoint-url=<endpoint-url>
Erklärung der Variablen:
Beispiel:
aws s3api put-object-retention --bucket mylockedbucket --key folder/meinobjekt.pdf --retention '{"Mode": "GOVERNANCE", "RetainUntilDate": "2023-08-14T09:58:34Z"}' --endpoint-url=https://s3.de-west-1.psmanaged.com
Überprüfen Sie die aktualisierte Retention des Objekts, um sicherzustellen, dass sie erfolgreich verlängert wurde.
aws s3api get-object-retention --bucket <bucketname> --key <objekt-key> --endpoint-url=https://<endpoint-url>
Erklärung der Variablen:
Beispiel:
aws s3api get-object-retention --bucket mylockedbucket --key folder/meinobjekt.pdf --endpoint-url=https://s3.de-west-1.psmanaged.com
Beispielausgabe:
{
"Retention": {
"Mode": "GOVERNANCE",
"RetainUntilDate": "2023-08-14T09:58:34+00:00"
}
}
Durch das Aktivieren der standardmäßigen Object Lock-Retention können Sie sicherstellen, dass alle in das Bucket hochgeladenen Objekte automatisch mit der gewünschten Retention versehen werden. Stellen Sie sicher, dass Sie die korrekten Werte für die Retention-Modi und die Anzahl der Tage angeben, um Ihre Anforderungen zu erfüllen.