ECS: Konfigurieren und Verwenden der S3 AWS-CLI

Summary: Wenn Sie die AWS-CLI verwenden, um Kundenszenarien zu testen, in denen sie die AWS-CLI mit ECS verwenden, um die Funktionalität und Kompatibilität zu bestätigen, lesen Sie immer den ECS-Datenzugriffsleitfaden für von ECS AWS S3 unterstützte API-Aufrufe. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

AWS Command-Line Interface (AWS CLI) ist ein Tool von AWS, das zum Testen von S3-Befehlen auf hoher Ebene und S3-Befehlen auf API-Ebene (s3api)

verwendet werden kann. So laden Sie das Tool herunter und installieren es. Alle unterstützten High-Level-Befehle können im Befehlssatz mithilfe des Befehls abgerufen werden aws s3api helpaus.

S3-URI: Stellt den Speicherort eines S3-Objekts, -Präfix oder -Buckets dar – Dies muss in folgender Form geschrieben werden s3://mybucket/mykey wobei mybucket ist kein angegebener S3-Bucket, mykey ist der angegebene S3-Schlüssel. Das path-Argument muss beginnen mit s3://

aws s3api-Befehle (externer Link) auf API-Ebene sind im s3api-Empfehlungssatz enthalten. Diese S3-API-Befehle bieten Zugriff auf Bucket-Metadaten, z. B. Bucket-ACL, Bucket-Policy, Lebenszyklus-Policies, um nur einige zu nennen. Alle unterstützten API-Aufrufe können im Befehlssatz mit dem Befehl abgerufen werden. aws s3api help.

  • Die AWS-CLI verwendet standardmäßig automatisch bis zu 10 Threads, um Dateien oder Teile während des Uploads hochzuladen
  • Die AWS-CLI verwendet automatisch multipart_threshold Uploads für Dateien >= 8 MB Dateigröße, multipart_chunksize

Herunterladen und Installieren von Anweisungen.

  1. Versionsversionen https://github.com/aws/aws-cli/releases (Externer Link)
  2. Herunterladen und Installieren des AWS-CLI-Bundles
# curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
  1. Bundle extrahieren
# unzip awscli-bundle.zip
  1. Führen Sie den Installationsbefehl aus.
# sudo /awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
  1. Version bestätigen
# aws version
Output:
      aws-cli/2.0.33 Python/3.7.3 Linux/4.15.0-109-generic botocore/2.0.0dev37

Konfigurieren der AWS-CLI

In diesem Abschnitt werden die grundlegenden Schritte zur Konfiguration der AWS-CLI für die Verwendung mit ECS S3 mithilfe des ECS-Objektnutzers erläutert. In diesem Abschnitt wird davon ausgegangen, dass der Bucket und der Objektnutzer bereits in ECS erstellt wurden. Die Zugangsdaten und die Konfigurationsdatei werden aktualisiert, wenn Sie den Befehl ausführen aws configureaus.

Die Datei mit den Zugangsdaten befindet sich hier. ~/.aws/credentials. In der Anmeldedatendatei werden Nutzerprofildetails (Zugriffsschlüssel-ID und geheime Zugriffsschlüssel) sowie in der Konfigurationsdatei Details zu Region und Ausgabeformat gespeichert.

Erforderlich:
  • Zugriffsschlüssel-ID: ECS-Objektnutzer
  • Geheimer Zugriffsschlüssel: Geheimer Schlüssel
Schritte:
  1. In diesem Beispiel wird ein Profilname mc_s3
# aws configure --profile mc_s3
Prompt:

    AWS Access Key ID [None]: mc_s3
    AWS Secret Access Key [None]: 1guFemRLSgqFau6uKzIVAZJu5+PS+S8qO7rvEsi7
    Default region name [None]: 
    Default output format [None]: json
  1. Auflisten von Profilen aller Profile (list-properties verfügbar in AWS CLI v2
# aws configure list-properties
Output:
    mc_s3
    ad_uid1
# aws configure list
Output:
		  Name                    Value             Type    Location
		  ----                    -----             ----    --------
	   profile                <not set>             None    None
	access_key     ****************c_s3 shared-credentials-file    
	secret_key     ****************Esi7 shared-credentials-file    
		region                               config-file    ~/.aws/config
  1. Listenspezifisches Profil
# aws configure get aws_access_key_id --profile mc_s3
Output:
      mc_s3
Dealing with SSL connections and error on self signed certificate.  ( [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1056))
  1. Bei Verwendung von Befehlen auf 9021, AWS-CLI-Option --no-verify-ssl ist erforderlich, um den Fehler des selbstsignierten Zertifikats zu umgehen.
# aws --profile mc_s3 --endpoint=https://ecshop:9021 s3api list-buckets
Output:
     SSL validation failed for https://ecshop:9021/mc_s3_bkt?acl [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1056)
  • Führen Sie den Befehl mit --no-verify Option zur Umgehung dieses Fehlers
# aws --profile mc_s3 --endpoint=https://ecshop:9021 s3api list-buckets --no-verify-ssl --output text
Output:
      
    /usr/local/aws-cli/v2/2.0.33/dist/urllib3/connectionpool.py:986: InsecureRequestWarning: Unverified HTTPS request is being made to host 'ecshop'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings

    BUCKETS 2020-02-24T21:24:29.440000+00:00        mc_s3_bkt
    BUCKETS 2020-05-06T17:23:48.870000+00:00        mc_s3_bkt2_backup
    BUCKETS 2020-05-06T21:16:13.344000+00:00        mc_s3_bkt_nfs
    OWNER   mc_s3   mc_s3
  • Die zweite Möglichkeit besteht darin, das selbstsignierte ECS-Zertifikat herunterzuladen, das im PEM-Format gespeichert ist und das --ca-bundle Option
  • Verwenden Sie OpenSSL, um das ECS-Zertifikat für den Objektdatenzugriff auf Port 9021 abzurufen und Zertifikatinhalte mit Ihrem bevorzugten Editor zu kopieren und einschließlich der Zertifikatheader zu speichern, wie im folgenden Beispiel gezeigt.
# openssl s_client -connect ecshop:9021
Wo ecshop ist die IP-Adresse oder der Hostname des ECS-Nodes und xxxxxx sollte das gesamte Zertifikat in Ihrer Umgebung sein.
Output:

    -----BEGIN CERTIFICATE----- 
    Xxxxxxxxx
    xxxxxxxxx
    ...
    ...
    -----END CERTIFICATE-----
  1. Auflisten von Buckets in der Tabelle Benutzerfreundlich mit CA-Bundle-Option, bei der das Zertifikat im PEM-Dateinamen-ecshop_cert_pem gespeichert wird 
# aws --profile mc_s3 --endpoint=https://ecshop:9021 s3api list-buckets  --ca-bundle ecshop_cert.pem  --output table
Output:
    -------------------------------------------------------------
    |                        ListBuckets                        |
    +-----------------------------------------------------------+
    ||                         Buckets                         ||
    |+-----------------------------------+---------------------+|
    ||           CreationDate            |        Name         ||
    |+-----------------------------------+---------------------+|
    ||  2020-02-24T21:24:29.440000+00:00 |  mc_s3_bkt          ||
    ||  2020-05-06T17:23:48.870000+00:00 |  mc_s3_bkt2_backup  ||
    ||  2020-05-06T21:16:13.344000+00:00 |  mc_s3_bkt_nfs      ||
    |+-----------------------------------+---------------------+|
    ||                          Owner                          ||
    |+-----------------------------------+---------------------+|
    ||            DisplayName            |         ID          ||
    |+-----------------------------------+---------------------+|
    ||  mc_s3                            |  mc_s3              ||
    |+-----------------------------------+---------------------+|

Grundlegende S3-Vorgänge

https://docs.aws.amazon.com/cli/latest/userguide/cli-services-s3-commands.html (Externer Link)
Performance-Tuning
  • max_concurrent_requests – Die maximale Anzahl gleichzeitiger Anforderungen
  • max_queue_size – Die maximale Anzahl von Aufgaben in der Aufgabenwarteschlange
  • multipart_threshold – Der Größenschwellenwert, den die CLI für mehrteilige Übertragungen einzelner Dateien verwendet.
  • multipart_chunksize – Bei Verwendung von mehrteiligen Übertragungen ist dies die Blockgröße, die von der CLI für mehrteilige Übertragungen einzelner Dateien verwendet wird.
  • max_bandwidth – Die maximale Bandbreite, die für das Hoch- und Herunterladen von Daten zu und von Amazon S3 verbraucht wird.
Gespeichert in der Konfigurationsdatei als Beispiel:
# cat .aws/config
Output:
    [profile mc_s3]
    output = json
    s3 =
            endpoint_url = http://ecshop:9020

              max_concurrent_requests = 20
              max_queue_size = 1000
              multipart_threshold = 64MB
              multipart_chunksize = 16MB
              max_bandwidth = 50MB/s
              addressing_style = auto 
Die Verwendung von aws configure set Befehl zum Festlegen von Parametern zum Anpassen der Uploadgeschwindigkeit
$ aws configure set default.s3.max_concurrent_requests 20
$ aws configure set default.s3.max_queue_size 10000
$ aws configure set default.s3.multipart_threshold 64MB
$ aws configure set default.s3.multipart_chunksize 16MB
$ aws configure set default.s3.max_bandwidth 50MB/s
$ aws configure set default.s3.addressing_style auto
Schritte: 
  1. Erstellen von Buckets mithilfe von s3 mb command
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3 mb s3://s3_bkt
Output:
    make_bucket: s3_bkt
  1. Auflisten von Buckets mithilfe von s3 ls und s3api list-buckets Befehlssätze listen Buckets für alle anderen Vorgänge (in S3 als "Präfixe" bezeichnet) auf (externer Link) in einem Bucket
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3 ls
Output:
   2020-07-29 20:34:24 s3_bkt

  #  aws --profile mc_s3 --endpoint http://ecshop:9020 s3api list-buckets
#  aws --profile mc_s3 --endpoint http://ecshop:9020 s3api list-buckets
Output:		
	 aws --profile mc_s3 --endpoint http://ecshop:9020 s3api list-buckets
	{
		"Buckets": [
			{
				"Name": "mc_s3_bkt",
				"CreationDate": "2020-02-24T21:24:29.440000+00:00"
			},
			{
				"Name": "mc_s3_bkt2_backup",
				"CreationDate": "2020-05-06T17:23:48.870000+00:00"
			},
			{
				"Name": "mc_s3_bkt_nfs",
				"CreationDate": "2020-05-06T21:16:13.344000+00:00"
			},
			{
				"Name": "s3_bkt",
				"CreationDate": "2020-07-30T00:34:24.147000+00:00"
			},
  1.  Erstellen und Hochladen von Dateien zu Testzwecken 
  • Beispiel: Erstellen von Dateien mit 1 MB und 4 MB
# dd if=/dev/zero of=1MB_output.file bs=1024 count=1024
# dd if=/dev/zero of=4MB_output.file bs=1024 count=4096
  • Beispiel für das Erstellen einer großen Datei mit 2 GB
# dd if=/dev/urandom of=bigfile_2GB bs=1024k count=2048
  • 1-MB-Datei in Bucket hochladen s3_bkt
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3 cp 1MB_output.file s3://s3_bkt
Output:
    upload: ./1MB_output.file to s3://s3_bkt/1MB_output.file
  1. Dateien im Bucket auflisten, s3_bkt Verwenden des Profilnamens mc_s3 Verwenden von s3 lsoder s3api list-objects Befehlssätze 
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3 ls s3://s3_bkt
Output:
2020-07-29 20:39:43   16.0 MiB 16MB_output.file
2020-07-29 20:37:25    1.0 MiB 1MB_output.file
2020-07-29 20:39:23    4.0 MiB 4MB_output.file
 # aws --profile mc_s3 --endpoint http://ecshop:9020 s3api list-objects --bucket s3_bkt
Output:
	{
		"Contents": [
			{
				"Key": "16MB_output.file",
				"LastModified": "2020-07-30T00:39:43.125000+00:00",
				"ETag": "\"3a2d20e2e504fe056bbaae5b4c2351fd-2\"",
				"Size": 16777216,
				"StorageClass": "STANDARD",
				"Owner": {
					"DisplayName": "mc_s3",
					"ID": "mc_s3"
				}
			},
			{
				"Key": "1MB_output.file",
				"LastModified": "2020-07-30T00:37:25.033000+00:00",
				"ETag": "\"b6d81b360a5672d80c27430f39153e2c\"",
				"Size": 1048576,
				"StorageClass": "STANDARD",
				"Owner": {
					"DisplayName": "mc_s3",
					"ID": "mc_s3"
				}
			},
  1. Auflisten von Objektversionen
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api list-object-versions --bucket s3_bkt --output text
  1. Laden Sie die Datei 1MB_output.file herunter von s3_bkt in das Verzeichnis /tmp auf dem lokalen Rechner.
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3 cp s3://s3_bkt/1MB_output.file /tmp/
Output:
     download: s3://s3_bkt/1MB_output.file to ../../tmp/1MB_output.file
  1. ACL einer Datei 1MB_output.file im YAML-Format auf Ausgabe auf Lesbarkeit überprüfen
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api get-object-acl --bucket s3_bkt --key 1MB_output.file  --output yaml
Output:
        
    Grants:
    - Grantee:
        DisplayName: mc_s3
        ID: mc_s3
        Type: CanonicalUser
      Permission: FULL_CONTROL
    Owner:
      DisplayName: mc_s3
      ID: mc_s3
  1. Bucket-ACL für Bucket überprüfen s3_bkt
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api get-bucket-acl --bucket s3_bkt --output yaml
Output:      
    Grants:
    - Grantee:
        DisplayName: mc_s3
        ID: mc_s3
        Type: CanonicalUser
      Permission: FULL_CONTROL
    Owner:
      DisplayName: mc_s3
      ID: mc_s3
  1. Überprüfen der Bucket-Version oder Aktivieren der Versionierung für den Bucket
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api get-bucket-versioning --bucket s3_bkt
Output:

    {
        "Status": "Enabled"
    }
  1. Initiieren eines mehrteiligen Uploads mithilfe der s3api-API-Ebene bei einer großen Datei 
  1. Erstellen Sie eine 5-GB-Datei:
# time dd if=/dev/urandom of=bigfile_5GB bs=1024k count=5096
  1. Upload starten
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api create-multipart-upload --bucket s3_bkt --key bigfile_5GB
Output:

    {
        "Bucket": "s3_bkt",
        "Key": "bigfile_5GB",
        "UploadId": "27cb6c45ab5c4c838fb5893263d871d3"
    }
  1. Auflisten unvollständiger mehrteiliger Dateiuploads https://aws.amazon.com/premiumsupport/knowledge-center/s3-multipart-upload-cli/ (externer Link)
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api list-multipart-uploads --bucket s3_bkt
Output:

	{
	    "Uploads": [
	        {
	            "UploadId": "27cb6c45ab5c4c838fb5893263d871d3",
	            "Key": "bigfile_5GB",
	            "Initiated": "2020-07-31T01:10:56.323000+00:00",
	            "StorageClass": "STANDARD",
	            "Owner": {
	                "DisplayName": "mc_s3",
	                "ID": "mc_s3"
	            }
	        }
	    ]
	}
  1. Verbessern s3 cp Befehls- oder Bucket-zu-Bucket-Leistungsempfehlungen für große Dateien zum Initiieren mehrteiliger Uploads und Ändern gleichzeitiger Threads, siehe oben unter Leistungsoptimierung.
  1. Durchführen einer Bucket-zu-Bucket-Kopie zum Kopieren file.txt in mc_s3_bkt an s3_bkt Verwenden von S3API 
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api copy-object --copy-source mc_s3_bkt/file.txt --key file.txt --bucket s3_bkt
Output:
{
    "VersionId": "1596159769267",
    "CopyObjectResult": {
        "ETag": "\"c789e490a90359de2bd3b09d7e957cfd-128\"",
        "LastModified": "2020-07-31T01:42:49.267000+00:00"
    }
}
  1. Auflisten von Dateien (Objekten oder Schlüsseln) in einem Bucket 
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3 ls s3://s3_bkt/file.txt --human-readable  summarize
Output:
      2020-07-30 21:42:49    1.0 GiB file.txt
  1. Kopieren einer Datei aus S3_bkt an mc_s3_bkt Verwenden des allgemeinen S3 CP-Befehlssatzes
Mit dem folgenden cp-Befehl wird ein einzelnes S3-Objekt in einen angegebenen Bucket und Schlüssel kopiert:
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3 cp s3://s3_bkt/file.txt s3://mc_s3_bkt/file2.txt
       Output:
         copy: s3://s3_bkt/file.txt to s3://mc_s3_bkt/file2.txt
  1. Überprüfen, ob die Versionierung für Buckets aktiviert ist s3_bkt
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api get-bucket-versioning --bucket s3_bkt
Output: 

      {
          "Status": "Enabled"
      }
  1. Löschen eines Buckets mithilfe von s3 rb Befehl (Befehl hat keine Ausgabe)
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3 rm s3://s3_bkt2
  1. Im folgenden Beispiel werden alle Objekte und Unterordner im Bucket gelöscht und anschließend der Bucket entfernt. (Wenn die Versionierung aktiviert ist, werden mit diesem Befehl keine Versionsobjekte entfernt (siehe LDS, Lebenszyklusrichtlinien.)
# aws s3 rb s3://bucket-name --force
  1. Aktivieren der Versionierung für Buckets s3_bkt Verwenden des s3api-Befehlssatzes auf API-Ebene (Befehl hat keine Ausgabe)
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api put-bucket-versioning --bucket s3_bkt --versioning-configuration Status=Enabled 
  1. Anwenden der Lebenszyklus-Policy Vorlage erstellen (siehe ECS-Datenzugriffshandbuch) AWS CLI erfordert das JSON-Format für die Lebenszyklus-Policy
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api put-bucket-lifecycle-configuration --generate-cli-skeleton input --bucket s3_bkt
  1. Anwenden der Bucket-Lebensdauer-Policy auf Bucket. Weitere Informationen finden Sie im ECS-Leitfaden für den Datenzugriff.
Richtlinie erstellen für AbortIncompleteMultipartUpload, NoncurrentVersionExpiration, and ExpiredObjectDeleteMarker and NoncurrentDays nach 7 Tagen ablaufen.
#  aws --profile mc_s3 --endpoint http://ecshop:9020 s3api put-bucket-lifecycle --bucket s3_bkt --lifecycle-configuration file://s3_bkt_lifecycle.json
Output:

{
   "Rules": [
   {
      "ID": "expire-non-current-and-dmarkers-and-mpu",
      "Status": "Enabled",
      "Prefix": "/",
      "Expiration": {
         "ExpiredObjectDeleteMarker": true
      },
      "AbortIncompleteMultipartUpload": {
         "DaysAfterInitiation": 7
      },
      "NoncurrentVersionExpiration": {
         "NoncurrentDays": 7
      }
   }
   ]
}
  1. GET-Lebenszyklus-Policy
# aws --profile mc_s3 --endpoint http://ecshop:9020 s3api get-bucket-lifecycle --bucket s3_bkt
Output:

{
    "Rules": [
        {
            "Expiration": {
                "Days": 10
            },
            "ID": "DeleteVersion-musa",
            "Prefix": "",
            "Status": "Enabled",
            "NoncurrentVersionExpiration": {
                "NoncurrentDays": 10
            }
        }
    ]
}
  1. Objekttagging mithilfe eines Schlüssel-Wert-Paars 
  1. Schreiben Sie eine Datei. 
$ aws s3 cp file.txt s3://mc_s3_bkt/aws/tag.txt  --profile mc_s3_emea --endpoint  http://emea:9020
upload: ./file.txt to s3://mc_s3_bkt/aws/tag.txt
  1. Tag hinzufügen (dieser Befehl hat keine Ausgabe, wenn er erfolgreich war. 
    Einzeiliger Befehl:
$ aws s3api put-object-tagging --profile mc_s3_emea --bucket mc_s3_bkt --key aws/tag.txt --tagging '{"TagSet": [{ "Key": "Product", "Value": "ECS" }]}' --endpoint-url http://emea:9020

Mehrzeiliges Kopieren und Einfügen: 

$ aws s3api put-object-tagging \
	 --profile mc_s3_emea \
     --bucket mc_s3_bkt \
     --key aws/tag.txt \
     --tagging '{"TagSet": [{ "Key": "Product", "Value": "ECS" }]}' \
    --endpoint-url http://emea:9020
  1. Rufen Sie das Objekt-Tag ab.
$ aws s3api get-object-tagging --profile mc_s3_emea --bucket mc_s3_bkt --key aws/tag.txt --endpoint http://emea:9020

{
    "TagSet": [
        {
            "Key": "Product",
            "Value": "ECS"
        }
    ]
}
  1. Hinzufügen mehrerer Tag-Werte 'key:value' - Kurzform
$ aws s3api put-object-tagging --profile mc_s3_emea --bucket mc_s3_bkt --key aws/tag5.txt --tagging '{"TagSet": [{ "Key": "Product", "Value": "ECS 3.6.1.2" },{"Key": "Company", "Value": "Dell Technologies"}]}' --endpoint-url http://emea:9020
  1. Rufen Sie das Objekt-Tag ab.
$ aws s3api get-object-tagging --profile mc_s3_emea --bucket mc_s3_bkt --key aws/tag5.txt
{
    "TagSet": [
        {
            "Key": "Product",
            "Value": "ECS 3.6.1.2"
        },
        {
            "Key": "Company",
            "Value": "Dell Technologies"
        }
    ]
}
  1. S3-Objektsperre
Mit ECS können Sie Objekte mit einem WORM-Modell (Write Once Read Many) über S3 Object Lock speichern. Diese Funktion verhindert, dass Objekte für eine bestimmte Zeit oder auf unbestimmte Zeit gelöscht oder überschrieben werden.
 
Hinweis:
  • Die ECS S3-Objektsperrfunktion unterstützt nur Buckets mit aktivierter Versionierung.
  • Es gibt keine ECS-Benutzeroberfläche für Objektsperren. Der Zugriff erfolgt über ECS-Object-Lock-APIs.
  • Die gesperrten Objekte sind vor Lebenszykluslöschungen geschützt
  • Bucket kann nicht für das Dateisystem aktiviert sein
  • Objektsperre funktioniert mit IAM-Nutzern und nicht mit Legacy-Nutzern 
  • Aktivieren der Objektsperre für den Bucket, automatisches Aktivieren der Versionierung 
  • Ein Patch ist erforderlich, wenn ADO aktiviert ist und in ECS 3.7 behoben werden soll. Siehe Artikel ECS: Deaktivieren der Objektsperrfunktion in ECS für IBM Content Manager


So legen Sie eine Objektsperre für einen Bucket fest.
Die Option "Use put-object-lock-configuration" wird mit der AWS-CLI verwendet.

Siehe: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-overview.html
put-object-lock-configuration — AWS CLI 1.22.24 Command Reference (amazon.com) (externer Link)

  • So legen Sie eine Objektsperrkonfiguration für einen Bucket fest
The following put-object-lock-configuration example sets a 1-day object lock on the specified bucket.

$ aws s3api put-object-lock-configuration \
	--profile iam1 \
    --bucket iam-bucket \
    --object-lock-configuration '{ "ObjectLockEnabled": "Enabled", "Rule": { "DefaultRetention": { "Mode": "COMPLIANCE", "Days": 1 }}}'

Mit diesem Befehl wird keine Ausgabe erzeugt.

  • put-object-legal-hold
$ aws s3api put-object-legal-hold --endpoint http://<hostname>:<port_number> --profile iam1 --bucket iam-bucket --key file1.txt --legal-hold "Status=ON"
where:
	--profile: name of profile is profile confirmed in .aws credentials file
	--bucket: Bucket name
	--key: Object name
	--legal-hold: ON or OFF
	--version-id: specifies the version id of the object for Versioned 
	--endpoint: ECS IP and port 9020 or 90201
  • get-object-legal-hold
$ aws s3api get-object-legal-hold --endpoint http://<hostname>:<port_number> --profile iam1 --bucket iam-bucket --key file1.txt
where:
	--bucket: Bucket name
	--key: Object name
	--version-id: specifies the version id of the object
	--endpoint: ECS IP and port 9020 or 90201

Affected Products

Elastic Cloud Storage

Products

ECS Appliance, ECS Appliance Hardware Series, ECS Appliance Software with Encryption, Elastic Cloud Storage
Article Properties
Article Number: 000020564
Article Type: How To
Last Modified: 02 Oct 2025
Version:  6
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.