Skip to main content
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Konfigurieren Sie die S3-Objektsperre über die S3-REST-API

Beitragende

Wenn die globale S3-Objektsperrung für Ihr StorageGRID-System aktiviert ist, können Sie Buckets mit aktivierter S3-Objektsperrung erstellen. Sie können für jeden Bucket oder die Aufbewahrungseinstellungen für jede Objektversion die Standardaufbewahrung festlegen.

Aktivieren der S3-Objektsperre für einen Bucket

Wenn die globale S3-Objektsperreneinstellung für Ihr StorageGRID-System aktiviert ist, können Sie bei der Erstellung jedes Buckets optional die S3-Objektsperre aktivieren.

S3 Object Lock ist eine permanente Einstellung, die nur beim Erstellen eines Buckets aktiviert werden kann. Sie können S3-Objektsperre nicht hinzufügen oder deaktivieren, nachdem ein Bucket erstellt wurde.

Verwenden Sie eine der folgenden Methoden, um S3 Object Lock für einen Bucket zu aktivieren:

  • Erstellen Sie den Bucket mit Tenant Manager. Siehe "S3-Bucket erstellen".

  • Erstellen Sie den Bucket mithilfe einer PUT-Bucket-Anforderung zusammen mit dem x-amz-bucket-object-lock-enabled Kopfzeile der Anfrage. Siehe "Operationen auf Buckets".

S3 Object Lock erfordert eine Bucket-Versionierung, die beim Erstellen des Buckets automatisch aktiviert wird. Die Versionierung für den Bucket kann nicht unterbrochen werden. Siehe "Objektversionierung".

Standardeinstellungen für die Aufbewahrung eines Buckets

Wenn S3 Object Lock für einen Bucket aktiviert ist, können Sie optional die Standardaufbewahrung für den Bucket aktivieren und einen Standardaufbewahrungsmodus und die Standardaufbewahrungsdauer festlegen.

Standardaufbewahrungsmodus

  • Im COMPLIANCE-Modus:

    • Das Objekt kann erst gelöscht werden, wenn das Aufbewahrungsdatum erreicht ist.

    • Das Aufbewahrungsdatum des Objekts kann erhöht, aber nicht verringert werden.

    • Das Aufbewahrungsdatum des Objekts kann erst entfernt werden, wenn dieses Datum erreicht ist.

  • Im GOVERNANCE-Modus:

    • Benutzer mit s3:BypassGovernanceRetention Berechtigung kann den verwenden x-amz-bypass-governance-retention: true Kopfzeile anfordern, um Aufbewahrungseinstellungen zu umgehen.

    • Diese Benutzer können eine Objektversion löschen, bevor das Aufbewahrungsdatum erreicht ist.

    • Diese Benutzer können das Aufbewahrungsdatum eines Objekts erhöhen, verringern oder entfernen.

Standardaufbewahrungszeitraum

Für jeden Bucket kann ein Standardaufbewahrungszeitraum in Jahren oder Tagen angegeben werden.

Festlegen der Standardaufbewahrung für einen Bucket

Verwenden Sie eine der folgenden Methoden, um die Standardaufbewahrung für einen Bucket festzulegen:

PUT Objekt Lock-Konfiguration

Mit DER ANFORDERUNG „OBJEKTSPERRKONFIGURATION“ KÖNNEN Sie den Standardaufbewahrungsmodus und den Standardaufbewahrungszeitraum für einen Bucket festlegen und ändern, für den S3 Object Lock aktiviert ist. Sie können auch zuvor konfigurierte Standardeinstellungen entfernen.

Wenn neue Objektversionen in den Bucket aufgenommen werden, wird der standardmäßige Aufbewahrungsmodus angewendet, wenn x-amz-object-lock-mode Und x-amz-object-lock-retain-until-date Sind nicht angegeben. Der Standardaufbewahrungszeitraum wird verwendet, um das Aufbewahrungsdatum von IF zu berechnen x-amz-object-lock-retain-until-date Ist nicht angegeben.

Wenn der Standardaufbewahrungszeitraum nach der Aufnahme einer Objektversion geändert wird, bleibt das „bis-Aufbewahrung“-Datum der Objektversion identisch und wird im neuen Standardaufbewahrungszeitraum nicht neu berechnet.

Sie müssen die haben s3:PutBucketObjectLockConfiguration Berechtigung, oder Konto root, um diesen Vorgang abzuschließen.

Der Content-MD5 Der Anforderungskopf muss in der PUT-Anforderung angegeben werden.

Anforderungsbeispiel

In diesem Beispiel wird S3 Object Lock für einen Bucket aktiviert und der Standardaufbewahrungsmodus auf COMPLIANCE und der Standardaufbewahrungszeitraum auf 6 Jahre festgelegt.

PUT /bucket?object-lock HTTP/1.1
Accept-Encoding: identity
Content-Length: 308
Host: host
Content-MD5: request header
User-Agent: s3sign/1.0.0 requests/2.24.0 python/3.8.2
X-Amz-Date: date
X-Amz-Content-SHA256: authorization-string
Authorization: authorization-string

<ObjectLockConfiguration>
    <ObjectLockEnabled>Enabled</ObjectLockEnabled>
    <Rule>
        <DefaultRetention>
            <Mode>COMPLIANCE</Mode>
            <Years>6</Years>
        </DefaultRetention>
    </Rule>
</ObjectLockConfiguration>

Bestimmen der Standardaufbewahrung für einen Bucket

Verwenden Sie eine der folgenden Methoden, um zu ermitteln, ob S3 Object Lock für einen Bucket aktiviert ist und den Standardaufbewahrungsmodus und den Standardaufbewahrungszeitraum anzuzeigen:

  • Zeigen Sie den Bucket im Tenant Manager an. Siehe "S3 Buckets anzeigen".

  • Geben Sie eine Anforderung ZUM ABRUFEN der Objektsperrkonfiguration aus.

Konfiguration der Objektsperre ABRUFEN

Mit der Anforderung OBJEKTSPERRKONFIGURATION ABRUFEN können Sie festlegen, ob S3 Object Lock für einen Bucket aktiviert ist. Ist diese Option aktiviert, können Sie prüfen, ob für den Bucket ein Standardaufbewahrungsmodus und eine Aufbewahrungsfrist konfiguriert sind.

Wenn neue Objektversionen in den Bucket aufgenommen werden, wird der standardmäßige Aufbewahrungsmodus angewendet, wenn x-amz-object-lock-mode Ist nicht angegeben. Der Standardaufbewahrungszeitraum wird verwendet, um das Aufbewahrungsdatum von IF zu berechnen x-amz-object-lock-retain-until-date Ist nicht angegeben.

Sie müssen die haben s3:GetBucketObjectLockConfiguration Berechtigung, oder Konto root, um diesen Vorgang abzuschließen.

Anforderungsbeispiel

GET /bucket?object-lock HTTP/1.1
Host: host
Accept-Encoding: identity
User-Agent: aws-cli/1.18.106 Python/3.8.2 Linux/4.4.0-18362-Microsoft botocore/1.17.29
x-amz-date: date
x-amz-content-sha256: authorization-string
Authorization: authorization-string

Antwortbeispiel

HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIXk=
x-amz-request-id: B34E94CACB2CEF6D
Date: Fri, 04 Sep 2020 22:47:09 GMT
Transfer-Encoding: chunked
Server: AmazonS3

<?xml version="1.0" encoding="UTF-8"?>
<ObjectLockConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <ObjectLockEnabled>Enabled</ObjectLockEnabled>
    <Rule>
        <DefaultRetention>
            <Mode>COMPLIANCE</Mode>
            <Years>6</Years>
        </DefaultRetention>
    </Rule>
</ObjectLockConfiguration>

Festlegen von Aufbewahrungseinstellungen für ein Objekt

Ein Bucket mit aktivierter S3-Objektsperrung kann eine Kombination von Objekten mit und ohne Aufbewahrungseinstellungen für S3-Objektsperrung enthalten.

Aufbewahrungseinstellungen auf Objektebene werden über die S3-REST-API angegeben. Die Aufbewahrungseinstellungen für ein Objekt überschreiben alle Standardaufbewahrungseinstellungen für den Bucket.

Sie können für jedes Objekt die folgenden Einstellungen festlegen:

  • Retention Mode: Entweder COMPLIANCE oder GOVERNANCE.

  • Bis-Datum behalten: Ein Datum, das angibt, wie lange die Objektversion von StorageGRID beibehalten werden muss.

    • Wenn im COMPLIANCE-Modus das Aufbewahrungsdatum in der Zukunft liegt, kann das Objekt abgerufen, aber nicht geändert oder gelöscht werden. Das Aufbewahrungsdatum kann erhöht werden, aber dieses Datum kann nicht verringert oder entfernt werden.

    • Im GOVERNANCE-Modus können Benutzer mit besonderer Berechtigung die Einstellung „bis zum Datum behalten“ umgehen. Sie können eine Objektversion löschen, bevor der Aufbewahrungszeitraum abgelaufen ist. Außerdem können sie das Aufbewahrungsdatum erhöhen, verringern oder sogar entfernen.

  • Legal Hold: Die Anwendung eines gesetzlichen Hold auf eine Objektversion sperrt diesen Gegenstand sofort. Beispielsweise müssen Sie ein Objekt, das mit einer Untersuchung oder einem Rechtsstreit zusammenhängt, rechtlich festhalten. Eine gesetzliche Aufbewahrungspflichten haben kein Ablaufdatum, bleiben aber bis zur ausdrücklichen Entfernung erhalten.

    Die Legal Hold-Einstellung für ein Objekt ist unabhängig vom Aufbewahrungsmodus und dem Aufbewahrungsdatum. Befindet sich eine Objektversion unter einem Legal Hold, kann diese Version nicht gelöscht werden.

Wenn Sie beim Hinzufügen einer Objektversion zu einem Bucket S3-Objektsperreinstellungen angeben möchten, geben Sie ein "PUT Objekt", "PUT Objekt - Kopieren", Oder "Initiieren Von Mehrteiligen Uploads" Anfrage.

Sie können Folgendes verwenden:

  • x-amz-object-lock-mode, Die COMPLIANCE oder GOVERNANCE sein können (Groß-/Kleinschreibung beachten).

    Hinweis Wenn Sie angeben x-amz-object-lock-mode, Sie müssen auch angeben x-amz-object-lock-retain-until-date.
  • x-amz-object-lock-retain-until-date

    • Der Wert für „bis-Datum beibehalten“ muss das Format aufweisen 2020-08-10T21:46:00Z. Fraktionale Sekunden sind zulässig, aber nur 3 Dezimalstellen bleiben erhalten (Präzision in Millisekunden). Andere ISO 8601-Formate sind nicht zulässig.

    • Das „Aufbewahrung bis“-Datum muss in der Zukunft liegen.

  • x-amz-object-lock-legal-hold

    Wenn die gesetzliche Aufbewahrungspflichten LIEGEN (Groß-/Kleinschreibung muss beachtet werden), wird das Objekt unter einer gesetzlichen Aufbewahrungspflichten platziert. Wenn die gesetzliche Aufbewahrungspflichten AUS DEM WEG gehen, wird keine gesetzliche Aufbewahrungspflichten platziert. Jeder andere Wert führt zu einem 400-Fehler (InvalidArgument).

Wenn Sie eine dieser Anfrageheadern verwenden, beachten Sie die folgenden Einschränkungen:

  • Der Content-MD5 Der Anforderungskopf ist erforderlich x-amz-object-lock-* In DER PUT-Objektanforderung ist eine Anforderungsüberschrift vorhanden. Content-MD5 Ist für PUT Object – Copy oder Initiierung von mehrteiligen Uploads nicht erforderlich.

  • Wenn für den Bucket die S3-Objektsperre nicht aktiviert ist und ein x-amz-object-lock-* Der Anforderungskopf ist vorhanden, es wird ein 400-Fehler (InvalidRequest) zurückgegeben.

  • Die PUT-Objektanforderung unterstützt die Verwendung von x-amz-storage-class: REDUCED_REDUNDANCY Passend zum Verhalten von AWS. Wird ein Objekt jedoch mit aktivierter S3-Objektsperre in einen Bucket aufgenommen, führt StorageGRID immer eine Dual-Commit-Aufnahme durch.

  • Eine nachfolgende ANTWORT AUF GET- oder HEAD Object-Version enthält die Kopfzeilen x-amz-object-lock-mode, x-amz-object-lock-retain-until-date, und x-amz-object-lock-legal-hold, Wenn konfiguriert und wenn der Anforderungssender die richtige hat s3:Get* Berechtigungen.

Sie können das verwenden s3:object-lock-remaining-retention-days Policy Condition Key zur Begrenzung der minimalen und maximalen zulässigen Aufbewahrungsfristen für Ihre Objekte.

Aktualisieren von Aufbewahrungseinstellungen für ein Objekt

Wenn Sie die Einstellungen für die gesetzliche Aufbewahrungs- oder Aufbewahrungseinstellung einer vorhandenen Objektversion aktualisieren müssen, können Sie die folgenden Vorgänge der Unterressource des Objekts ausführen:

  • PUT Object legal-hold

    Wenn der neue Legal-Hold-Wert AKTIVIERT ist, wird das Objekt unter einer gesetzlichen Aufbewahrungspflichten platziert. Wenn DER Rechtsvorenthalten-Wert DEAKTIVIERT ist, wird die gesetzliche Aufbewahrungspflichten aufgehoben.

  • PUT Object retention

    • Der Wert des Modus kann COMPLIANCE oder GOVERNANCE sein (Groß-/Kleinschreibung muss beachtet werden).

    • Der Wert für „bis-Datum beibehalten“ muss das Format aufweisen 2020-08-10T21:46:00Z. Fraktionale Sekunden sind zulässig, aber nur 3 Dezimalstellen bleiben erhalten (Präzision in Millisekunden). Andere ISO 8601-Formate sind nicht zulässig.

    • Wenn eine Objektversion über ein vorhandenes Aufbewahrungsdatum verfügt, können Sie sie nur erhöhen. Der neue Wert muss in der Zukunft liegen.

So verwenden Sie DEN GOVERNANCE-Modus

Benutzer, die über das verfügen s3:BypassGovernanceRetention Berechtigung kann die aktiven Aufbewahrungseinstellungen eines Objekts umgehen, das DEN GOVERNANCE-Modus verwendet. Alle LÖSCHVORGÄNGE für die Objektaufbewahrung müssen den enthalten x-amz-bypass-governance-retention:true Kopfzeile der Anfrage. Diese Benutzer können die folgenden zusätzlichen Vorgänge ausführen:

  • Führen SIE VORGÄNGE ZUM LÖSCHEN von Objekten aus oder LÖSCHEN Sie mehrere Objekte, um eine Objektversion vor Ablauf des Aufbewahrungszeitraums zu löschen.

    Objekte, die sich unter einem Legal Hold befinden, können nicht gelöscht werden. Legal Hold muss DEAKTIVIERT sein.

  • Führen SIE PUT Objektaufbewahrungsvorgänge durch, bei denen der Modus einer Objektversion von GOVERNANCE zu COMPLIANCE geändert wird, bevor der Aufbewahrungszeitraum des Objekts abgelaufen ist.

    Die Änderung des Modus von COMPLIANCE zu GOVERNANCE ist niemals zulässig.

  • Führen SIE PUT Objektaufbewahrungsvorgänge durch, um den Aufbewahrungszeitraum einer Objektversion zu erhöhen, zu verringern oder zu entfernen.