Erstellen eines Batchoperations-Auftrags mit Auftrags-Markierungen zur Kennzeichnung - Amazon Simple Storage Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen eines Batchoperations-Auftrags mit Auftrags-Markierungen zur Kennzeichnung

Sie können den Zugriff auf Ihre S3-Batch-Vorgänge-Aufträge kennzeichnen und steuern, indem Sie Markierungen hinzufügen. Markierungen können verwendet werden, um zu ermitteln, wer für einen Batchoperations-Auftrag verantwortlich ist. Sie können Aufträge mit ihnen zugeordneten Markierungen erstellen oder Sie können Aufträgen nach ihrer Erstellung Markierungen hinzufügen. Weitere Informationen finden Sie unter Steuern von Zugriffs- und Labeling-Aufträgen mithilfe von Markierungen.

Im folgenden AWS CLI-CLI-Beispiel wird der S3-Batchoperations-Auftrag S3PutObjectCopy mit Auftrags-Markierungen als Bezeichnungen für den Auftrag erstellt.

  1. Wählen Sie die Aktion oder OPERATION aus, die der Batchoperations-Auftrag ausführen soll, und wählen Sie Ihre TargetResource.

    read -d '' OPERATION <<EOF { "S3PutObjectCopy": { "TargetResource": "arn:aws:s3:::destination-bucket" } } EOF
  2. Identifizieren Sie die Auftrags-TAGS, die Sie für den Auftrag wünschen. In diesem Fall wenden Sie beiden Markierungen department und FiscalYear mit den Werten Marketing bzw. 2020 an.

    read -d '' TAGS <<EOF [ { "Key": "department", "Value": "Marketing" }, { "Key": "FiscalYear", "Value": "2020" } ] EOF
  3. Geben Sie das MANIFEST für den Batchoperations-Auftrag an.

    read -d '' MANIFEST <<EOF { "Spec": { "Format": "EXAMPLE_S3BatchOperations_CSV_20180820", "Fields": [ "Bucket", "Key" ] }, "Location": { "ObjectArn": "arn:aws:s3:::example-bucket/example_manifest.csv", "ETag": "example-5dc7a8bfb90808fc5d546218" } } EOF
  4. Konfigurieren Sie den REPORT für den Batchoperations-Auftrag.

    read -d '' REPORT <<EOF { "Bucket": "arn:aws:s3:::example-report-bucket", "Format": "Example_Report_CSV_20180820", "Enabled": true, "Prefix": "reports/copy-with-replace-metadata", "ReportScope": "AllTasks" } EOF
  5. Führen Sie die Aktion create-job aus, um Ihren Batchoperations-Auftrag mit Eingaben zu erstellen, die in den vorherigen Schritten festgelegt wurden.

    aws \ s3control create-job \ --account-id 123456789012 \ --manifest "${MANIFEST//$'\n'}" \ --operation "${OPERATION//$'\n'/}" \ --report "${REPORT//$'\n'}" \ --priority 10 \ --role-arn arn:aws:iam::123456789012:role/batch-operations-role \ --tags "${TAGS//$'\n'/}" \ --client-request-token "$(uuidgen)" \ --region us-west-2 \ --description "Copy with Replace Metadata";

Im folgenden Beispiel wird ein S3-Batchoperations-Auftrag mit Markierungen unter Verwendung des erstellt AWS SDK for Java.

public String createJob(final AWSS3ControlClient awss3ControlClient) { final String manifestObjectArn = "arn:aws:s3:::example-manifest-bucket/manifests/10_manifest.csv"; final String manifestObjectVersionId = "example-5dc7a8bfb90808fc5d546218"; final JobManifestLocation manifestLocation = new JobManifestLocation() .withObjectArn(manifestObjectArn) .withETag(manifestObjectVersionId); final JobManifestSpec manifestSpec = new JobManifestSpec().withFormat(JobManifestFormat.S3InventoryReport_CSV_20161130); final JobManifest manifestToPublicApi = new JobManifest() .withLocation(manifestLocation) .withSpec(manifestSpec); final String jobReportBucketArn = "arn:aws:s3:::example-report-bucket"; final String jobReportPrefix = "example-job-reports"; final JobReport jobReport = new JobReport() .withEnabled(true) .withReportScope(JobReportScope.AllTasks) .withBucket(jobReportBucketArn) .withPrefix(jobReportPrefix) .withFormat(JobReportFormat.Report_CSV_20180820); final String lambdaFunctionArn = "arn:aws:lambda:us-west-2:123456789012:function:example-function"; final JobOperation jobOperation = new JobOperation() .withLambdaInvoke(new LambdaInvokeOperation().withFunctionArn(lambdaFunctionArn)); final S3Tag departmentTag = new S3Tag().withKey("department").withValue("Marketing"); final S3Tag fiscalYearTag = new S3Tag().withKey("FiscalYear").withValue("2020"); final String roleArn = "arn:aws:iam::123456789012:role/example-batch-operations-role"; final Boolean requiresConfirmation = true; final int priority = 10; final CreateJobRequest request = new CreateJobRequest() .withAccountId("123456789012") .withDescription("Test lambda job") .withManifest(manifestToPublicApi) .withOperation(jobOperation) .withPriority(priority) .withRoleArn(roleArn) .withReport(jobReport) .withTags(departmentTag, fiscalYearTag) .withConfirmationRequired(requiresConfirmation); final CreateJobResult result = awss3ControlClient.createJob(request); return result.getJobId(); }