

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.

# Grundlegende Operationen für Amazon QLDB-Ledger
<a name="ledger-management.basics"></a>

**Wichtig**  
Hinweis zum Ende des Supports: Bestandskunden können Amazon QLDB bis zum Ende des Supports am 31.07.2025 nutzen. Weitere Informationen finden Sie unter [Migrieren eines Amazon QLDB-Ledgers zu Amazon](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/) Aurora PostgreSQL.

Sie können die QLDB-API oder die AWS Command Line Interface (AWS CLI) verwenden, um Ledger in Amazon QLDB zu erstellen, zu aktualisieren und zu löschen. Sie können auch alle Ledger in Ihrem Konto auflisten oder Informationen zu einem bestimmten Ledger abrufen.

Die folgenden Themen enthalten kurze Codebeispiele, die allgemeine Schritte für Ledger-Operationen mit dem und dem zeigen. AWS SDK für Java AWS CLI

**Topics**
+ [

## Ein Ledger erstellen
](#ledger-management.basics.create)
+ [

## Beschreibung eines Hauptbuches
](#ledger-management.basics.describe)
+ [

## Ein Ledger aktualisieren
](#ledger-management.basics.update)
+ [

## Aktualisierung eines Ledger-Berechtigungsmodus
](#ledger-management.basics.update-permissions)
+ [

## Ein Ledger löschen
](#ledger-management.basics.delete)
+ [

## Ledger auflisten
](#ledger-management.basics.list)

Codebeispiele, die diese Operationen in einer vollständigen Beispielanwendung demonstrieren, finden Sie in den folgenden [Erste Schritte mit dem Treiber](getting-started-driver.md) Tutorials und GitHub Repositorys:
+ [Java: [Tutorial](getting-started.java.tutorial.md) \$1 Repository GitHub ](https://github.com/aws-samples/amazon-qldb-dmv-sample-java)
+ Node.js: [Lernprogramm](getting-started.nodejs.tutorial.md) \$1 [GitHub Repository](https://github.com/aws-samples/amazon-qldb-dmv-sample-nodejs)
+ Python: [Tutorial](getting-started.python.tutorial.md) \$1 [GitHub Repositorium](https://github.com/aws-samples/amazon-qldb-dmv-sample-python)

## Ein Ledger erstellen
<a name="ledger-management.basics.create"></a>

Verwenden Sie den `CreateLedger` Vorgang, um ein Hauptbuch in Ihrem zu erstellen. AWS-Konto Sie müssen die folgenden Informationen angeben:
+ **Ledgername** — Der Name des Hauptbuches, das Sie in Ihrem Konto erstellen möchten. Der Name muss unter all Ihren aktuellen Ledgern eindeutig sein. AWS-Region

  Benennungseinschränkungen für Ledger-Namen sind in [Kontingente und Limits in Amazon QLDB](limits.md#limits.naming) definiert.
+ **Berechtigungsmodus** — Der Berechtigungsmodus, der dem Ledger zugewiesen werden soll. Wählen Sie eine der folgenden Optionen:
  + **Alle zulassen** — Ein älterer Berechtigungsmodus, der die Zugriffskontrolle mit Granularität auf API-Ebene für Ledger ermöglicht.

    Dieser Modus ermöglicht Benutzern, die `SendCommand`-API-Berechtigung für dieses Ledger zum Ausführen aller PartiQL-Befehle (daher `ALLOW_ALL`) auf beliebigen Tabellen im angegebenen Ledger auszuführen. Dieser Modus ignoriert alle IAM-Berechtigungs-Richtlinien auf Tabellen- oder Befehls-Ebene, die Sie für das Ledger erstellen.
  + **Standard** — (*empfohlen*) Ein Berechtigungsmodus, der eine genauere Zugriffskontrolle für Ledger, Tabellen und PartiQL-Befehle ermöglicht. Wir empfehlen dringend, diesen Berechtigungsmodus zu verwenden, um die Sicherheit Ihrer Ledger-Daten zu maximieren.

    Standardmäßig lehnt dieser Modus alle Anfragen zur Ausführung von PartiQL-Befehlen für Tabellen in diesem Ledger ab. Um PartiQL-Befehle zuzulassen, müssen Sie zusätzlich zur `SendCommand` API-Berechtigung für das Ledger IAM-Berechtigungsrichtlinien für bestimmte Tabellenressourcen und PartiQL-Aktionen erstellen. Weitere Informationen finden Sie unter [Erste Schritte mit dem Standardberechtigungsmodus in Amazon QLDB](getting-started-standard-mode.md).
+ **Löschschutz** — (Optional) Die Markierung, die verhindert, dass ein Ledger von einem Benutzer gelöscht wird. Wenn Sie ihn bei der Ledger-Erstellung nicht angeben, ist diese Funktion standardmäßig aktiviert (`true`).

  Wenn der Löschschutz aktiviert ist, müssen Sie ihn zuerst deaktivieren, bevor Sie das Ledger löschen können. Sie können sie deaktivieren, indem Sie mit der Operation `UpdateLedger` das Flag auf `false` einstellen.
+ **AWS KMS key**— (Optional) Der Schlüssel in AWS Key Management Service (AWS KMS), der für die Verschlüsselung von Daten im Ruhezustand verwendet werden soll. Wählen Sie einen der folgenden Typen von AWS KMS keys:
  + **AWS eigener KMS-Schlüssel** — Verwenden Sie einen KMS-Schlüssel, der in AWS Ihrem Namen gehört und von diesem verwaltet wird.

    Wenn Sie diesen Parameter bei der Ledger-Erstellung nicht definieren, verwendet das Ledger standardmäßig diesen Schlüsseltyp. Sie können die Zeichenfolge auch verwenden`AWS_OWNED_KMS_KEY`, um diesen Schlüsseltyp anzugeben. Für diese Option ist kein zusätzliches Setup erforderlich.
  + **Vom Kunden verwalteter KMS-Schlüssel** — Verwenden Sie einen KMS-Schlüssel mit symmetrischer Verschlüsselung in Ihrem Konto, das Sie erstellen, besitzen und verwalten. QLDB unterstützt keine [asymmetrischen](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) Schlüssel.

    Für diese Option müssen Sie einen KMS-Schlüssel erstellen oder einen vorhandenen Schlüssel in Ihrem Konto verwenden. Anweisungen zur Erstellung eines vom Kunden verwalteten Schlüssels finden Sie unter [Erstellen von KMS-Schlüsseln mit symmetrischer Verschlüsselung](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) im *AWS Key Management Service Entwicklerhandbuch*.

    Sie können einen vom Kunden verwalteten KMS-Schlüssel mithilfe einer ID, eines Alias oder eines Amazon-Ressourcennamens (ARN) angeben. Weitere Informationen finden Sie unter [Schlüsselkennungen (KeyId)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id) im *AWS Key Management Service Entwicklerhandbuch*.
**Anmerkung**  
Regionsübergreifende Schlüssel werden nicht unterstützt. Der angegebene KMS-Schlüssel muss sich in demselben Verzeichnis befinden AWS-Region wie Ihr Hauptbuch.

  Weitere Informationen finden Sie unter [Verschlüsselung im Ruhezustand in Amazon QLDB](encryption-at-rest.md).
+ **Tags** — (Optional) Fügen Sie dem Ledger Metadaten hinzu, indem Sie Tags als Schlüssel-Wert-Paare anhängen. Sie können Ihrem Ledger Tags hinzufügen, um sie zu organisieren und zu identifizieren. Weitere Informationen finden Sie unter [Verschlagwortung von Amazon QLDB-Ressourcen](tagging.md).

Das Ledger ist erst einsatzbereit, wenn QLDB es erstellt und seinen Status auf setzt. `ACTIVE`

### Ein Ledger erstellen (Java)
<a name="ledger-mgmt.basics.create.java"></a>

**Um ein Ledger mit dem zu erstellen AWS SDK für Java**

1. Erstellen Sie eine Instance der `AmazonQLDB`-Klasse.

1. Erstellen Sie eine Instance der `CreateLedgerRequest`-Klasse, um die Anforderungsinformationen bereitzustellen.

   Sie müssen den Ledger-Namen und einen Berechtigungsmodus angeben.

1. Führen Sie die `createLedger`-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.

Die `createLedger`-Anforderung gibt ein `CreateLedgerResult`-Objekt zurück, das Informationen über den Ledger enthält. Im nächsten Abschnitt finden Sie ein Beispiel für die Verwendung der Operation `DescribeLedger`, um den Status Ihres Ledgers nach dem Erstellen zu überprüfen.

Die folgenden Beispiele verdeutlichen die vorherigen Schritte.

**Example — Verwenden Sie die Standardkonfigurationseinstellungen**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();
CreateLedgerRequest request = new CreateLedgerRequest()
        .withName(ledgerName)
        .withPermissionsMode(PermissionsMode.STANDARD);
CreateLedgerResult result = client.createLedger(request);
```
Das Ledger verwendet die folgenden Standardeinstellungen, wenn Sie sie nicht angeben:  
+ Löschschutz — Aktiviert (`true`).
+ KMS-Schlüssel — AWS eigener KMS-Schlüssel.

**Example — Deaktivieren Sie den Löschschutz, verwenden Sie einen vom Kunden verwalteten KMS-Schlüssel und hängen Sie Tags an**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();

Map<String, String> tags = new HashMap<>();
tags.put("IsTest", "true");
tags.put("Domain", "Test");

CreateLedgerRequest request = new CreateLedgerRequest()
        .withName(ledgerName)
        .withPermissionsMode(PermissionsMode.STANDARD)
        .withDeletionProtection(false)
        .withKmsKey("arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab")
        .withTags(tags);
CreateLedgerResult result = client.createLedger(request);
```

### Ein Ledger erstellen ()AWS CLI
<a name="ledger-mgmt.basics.create.cli"></a>

Erstellen Sie ein neues Ledger, das mit den `vehicle-registration` Standardkonfigurationseinstellungen benannt wird.

**Example**  

```
aws qldb create-ledger --name vehicle-registration --permissions-mode STANDARD
```

**Anmerkung**  
Das Ledger verwendet die folgenden Standardeinstellungen, wenn Sie sie nicht angeben:  
Löschschutz — Aktiviert (`true`).
KMS-Schlüssel — AWS eigener KMS-Schlüssel.

Oder erstellen Sie ein neues Hauptbuch `vehicle-registration` mit deaktiviertem Löschschutz, mit einem bestimmten vom Kunden verwalteten KMS-Schlüssel und mit bestimmten Tags.

**Example**  

```
aws qldb create-ledger \
    --name vehicle-registration \
    --no-deletion-protection \
    --permissions-mode STANDARD \
    --kms-key arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab \
    --tags IsTest=true,Domain=Test
```

### Ein Ledger erstellen ()AWS CloudFormation
<a name="ledger-mgmt.basics.create.cfn"></a>

Sie können auch eine [AWS CloudFormation](https://aws.amazon.com/cloudformation)Vorlage verwenden, um Ledger zu erstellen. Weitere Informationen finden Sie in der [AWS::QLDB::Ledger](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html)Ressource im *AWS CloudFormation Benutzerhandbuch*.

## Beschreibung eines Hauptbuches
<a name="ledger-management.basics.describe"></a>

Um Details über einen Ledger anzuzeigen, verwenden Sie die Operation `DescribeLedger`. Sie müssen den Ledger-Namen angeben. Die Ausgabe von `DescribeLedger` erfolgt in demselben Format wie bei `CreateLedger`. Dazu gehören folgende Informationen:
+ **Ledgername** — Der Name des Ledgers, das Sie beschreiben möchten.
+ **ARN** — Der Amazon-Ressourcenname (ARN) für das Ledger im folgenden Format.

  ```
  arn:aws:qldb:aws-region:account-id:ledger/ledger-name
  ```
+ **Löschschutz** — Das Kennzeichen, das angibt, ob die Löschschutzfunktion aktiviert ist.
+ **Erstellungsdatum und -zeit** — Datum und Uhrzeit im Epochenzeitformat, an dem das Ledger erstellt wurde.
+ **Status** — Der aktuelle Status des Ledgers. Dabei kann es sich um einen der folgenden Werte handeln:
  + `CREATING`
  + `ACTIVE`
  + `DELETING`
  + `DELETED`
+ **Berechtigungsmodus** — Der Berechtigungsmodus, der dem Ledger zugewiesen ist. Dabei kann es sich um einen der folgenden Werte handeln:
  + `ALLOW_ALL`— Ein älterer Berechtigungsmodus, der die Zugriffskontrolle mit Granularität auf API-Ebene für Ledger ermöglicht.
  + `STANDARD`— Ein Berechtigungsmodus, der eine genauere Zugriffskontrolle für Ledger, Tabellen und PartiQL-Befehle ermöglicht.
+ **Beschreibung der Verschlüsselung** — Informationen zur Verschlüsselung ruhender Daten im Ledger. Dies beinhaltet die folgenden Elemente:
  + **AWS KMS key ARN** — Der ARN des vom Kunden verwalteten KMS-Schlüssels, den das Ledger für die Verschlüsselung im Ruhezustand verwendet. Wenn dieser nicht definiert ist, verwendet das Ledger einen AWS eigenen KMS-Schlüssel für die Verschlüsselung.
  + **Verschlüsselungsstatus** — Der aktuelle Status der Verschlüsselung im Ruhezustand für das Ledger. Dabei kann es sich um einen der folgenden Werte handeln:
    + `ENABLED`— Die Verschlüsselung ist mit dem angegebenen Schlüssel vollständig aktiviert.
    + `UPDATING`— Die angegebene Schlüsseländerung wird aktiv verarbeitet.

      Die wichtigsten Änderungen in QLDB sind asynchron. Während der Verarbeitung der Schlüsseländerung ist der Ledger vollständig zugänglich, ohne dass die Leistung beeinträchtigt wird. Die Zeit, die für die Aktualisierung eines Schlüssels benötigt wird, hängt von der Größe des Hauptbuchs ab.
    + `KMS_KEY_INACCESSIBLE`— Auf den angegebenen, vom Kunden verwalteten KMS-Schlüssel kann nicht zugegriffen werden, und das Ledger ist beeinträchtigt. Entweder wurde der Schlüssel deaktiviert oder gelöscht, oder die Zuweisungen für den Schlüssel wurden widerrufen. Wenn ein Ledger beeinträchtigt ist, kann nicht darauf zugegriffen werden und es werden keine Lese- oder Schreibanforderungen akzeptiert.

      Ein beeinträchtigtes Ledger kehrt automatisch in den aktiven Status zurück, nachdem Sie die Grants für den Schlüssel wiederhergestellt haben oder nachdem Sie den deaktivierten Schlüssel wieder aktiviert haben. Das Löschen eines vom Kunden verwalteten KMS-Schlüssels ist jedoch irreversibel. Nach dem Löschen eines Schlüssels können Sie nicht mehr auf die Ledger zugreifen, die mit diesem Schlüssel geschützt sind, und die Daten können nicht mehr dauerhaft wiederhergestellt werden.
  + **Unzugänglich AWS KMS key** — Das Datum und die Uhrzeit im Epochenzeitformat, an dem der KMS-Schlüssel im Falle eines Fehlers zum ersten Mal unzugänglich wurde.

    Dies ist nicht definiert, wenn auf den KMS-Schlüssel zugegriffen werden kann.

  Weitere Informationen finden Sie unter [Verschlüsselung im Ruhezustand in Amazon QLDB](encryption-at-rest.md).

**Anmerkung**  
Nachdem Sie ein QLDB-Ledger erstellt haben, ist es einsatzbereit, wenn sich sein Status von zu ändert. `CREATING` `ACTIVE`

### Beschreibung eines Ledgers (Java)
<a name="ledger-mgmt.basics.describe.java"></a>

**Um ein Ledger mit dem zu beschreiben AWS SDK für Java**

1. Erstellen Sie eine Instance der `AmazonQLDB`-Klasse. Oder Sie können dieselbe Instance des `AmazonQLDB`-Clients verwenden, die Sie für die Anforderung `CreateLedger` instanziiert haben.

1. Erstellen Sie eine Instance der `DescribeLedgerRequest`-Klasse und geben Sie den Namen des Ledgers an, den Sie löschen möchten.

1. Führen Sie die `describeLedger`-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.

1. Die Anforderung `describeLedger` gibt ein `DescribeLedgerResult`-Objekt zurück, das aktuelle Informationen über den Ledger enthält.

Im folgenden Codebeispiel werden die vorherigen Schritte veranschaulicht. Sie können die `describeLedger`-Methode des Clients aufrufen, um die Ledger-Informationen jederzeit abzurufen.

**Example**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();
DescribeLedgerRequest request = new DescribeLedgerRequest().withName(ledgerName);
DescribeLedgerResult result = client.describeLedger(request);
System.out.printf("%s: ARN: %s \t State: %s \t CreationDateTime: %s \t DeletionProtection: %s
                   \t PermissionsMode: %s \t EncryptionDescription: %s",
        result.getName(),
        result.getArn(),
        result.getState(),
        result.getCreationDateTime(),
        result.getDeletionProtection(),
        result.getPermissionsMode(),
        result.getEncryptionDescription());
```

### Beschreibung eines Ledgers ()AWS CLI
<a name="ledger-mgmt.basics.describe.cli"></a>

Beschreiben Sie den `vehicle-registration`-Ledger, den Sie gerade erstellt haben.

**Example**  

```
aws qldb describe-ledger --name vehicle-registration
```

## Ein Ledger aktualisieren
<a name="ledger-management.basics.update"></a>

Mit diesem `UpdateLedger` Vorgang können Sie derzeit die folgenden Konfigurationseinstellungen für ein vorhandenes Ledger ändern:
+ **Löschschutz** — Die Markierung, die verhindert, dass ein Ledger von einem Benutzer gelöscht wird. Wenn diese Funktion aktiviert ist, müssen Sie sie zunächst deaktivieren, indem Sie die Markierung auf setzen, `false` bevor Sie das Ledger löschen können.

  Wenn Sie diesen Parameter nicht definieren, werden keine Änderungen an der Löschschutzeinstellung des Ledgers vorgenommen.
+ **AWS KMS key**— Der Schlüssel in AWS Key Management Service (AWS KMS), der für die Verschlüsselung von Daten im Ruhezustand verwendet werden soll. Wenn Sie diesen Parameter nicht definieren, werden keine Änderungen am KMS-Schlüssel des Ledgers vorgenommen.
**Anmerkung**  
Amazon QLDB hat AWS KMS keys am 22. Juli 2021 den Support für Customer-Managed eingeführt. Alle Ledger, die vor dem Start erstellt wurden, sind AWS-eigene Schlüssel standardmäßig geschützt, kommen aber derzeit nicht für die Verschlüsselung im Ruhezustand mit vom Kunden verwalteten Schlüsseln in Frage.  
Sie können die Erstellungszeit Ihres Ledgers auf der QLDB-Konsole einsehen.

  Wählen Sie eine der folgenden Optionen aus:
  + **AWS eigener KMS-Schlüssel** — Verwenden Sie einen KMS-Schlüssel, der in Ihrem Namen gehört und von diesem verwaltet wird AWS . Um diesen Schlüsseltyp zu verwenden, geben Sie die Zeichenfolge `AWS_OWNED_KMS_KEY` für diesen Parameter an. Für diese Option ist kein zusätzliches Setup erforderlich.
  + **Vom Kunden verwalteter KMS-Schlüssel** — Verwenden Sie einen KMS-Schlüssel mit symmetrischer Verschlüsselung in Ihrem Konto, das Sie erstellen, besitzen und verwalten. QLDB unterstützt keine [asymmetrischen](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) Schlüssel.

    Für diese Option müssen Sie einen KMS-Schlüssel erstellen oder einen vorhandenen Schlüssel in Ihrem Konto verwenden. Anweisungen zur Erstellung eines vom Kunden verwalteten Schlüssels finden Sie unter [Erstellen von KMS-Schlüsseln mit symmetrischer Verschlüsselung](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) im *AWS Key Management Service Entwicklerhandbuch*.

    Sie können einen vom Kunden verwalteten KMS-Schlüssel mithilfe einer ID, eines Alias oder eines Amazon-Ressourcennamens (ARN) angeben. Weitere Informationen finden Sie unter [Schlüsselkennungen (KeyId)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id) im *AWS Key Management Service Entwicklerhandbuch*.
**Anmerkung**  
Regionsübergreifende Schlüssel werden nicht unterstützt. Der angegebene KMS-Schlüssel muss sich in demselben Verzeichnis befinden AWS-Region wie Ihr Hauptbuch.

  Die wichtigsten Änderungen in QLDB sind asynchron. Während der Verarbeitung der Schlüsseländerung ist der Ledger vollständig zugänglich, ohne dass die Leistung beeinträchtigt wird.

  Sie können die Schlüssel so oft wie nötig wechseln, aber die Zeit, die für die Aktualisierung eines Schlüssels benötigt wird, hängt von der Größe des Hauptbuchs ab. Sie können den `DescribeLedger` Vorgang verwenden, um den Status der Verschlüsselung im Ruhezustand zu überprüfen.

  Weitere Informationen finden Sie unter [Verschlüsselung im Ruhezustand in Amazon QLDB](encryption-at-rest.md).

Die Ausgabe von `UpdateLedger` erfolgt in demselben Format wie bei `CreateLedger`.

### Aktualisierung eines Ledgers (Java)
<a name="ledger-mgmt.basics.update.java"></a>

**Um ein Ledger mit dem zu aktualisieren AWS SDK für Java**

1. Erstellen Sie eine Instance der `AmazonQLDB`-Klasse.

1. Erstellen Sie eine Instance der `UpdateLedgerRequest`-Klasse, um die Anforderungsinformationen bereitzustellen.

   Sie müssen den Ledger-Namen zusammen mit einem neuen booleschen Wert für den Löschschutz oder einem neuen Zeichenkettenwert für den KMS-Schlüssel angeben.

1. Führen Sie die `updateLedger`-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.

Die folgenden Codebeispiele veranschaulichen die vorherigen Schritte. Die Anforderung `updateLedger` gibt ein `UpdateLedgerResult`-Objekt mit aktualisierten Informationen zum Ledger zurück.

**Example — Deaktivieren Sie den Löschschutz**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();
UpdateLedgerRequest request = new UpdateLedgerRequest()
        .withName(ledgerName)
        .withDeletionProtection(false);
UpdateLedgerResult result = client.updateLedger(request);
```

**Example — Verwenden Sie einen vom Kunden verwalteten KMS-Schlüssel**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();
UpdateLedgerRequest request = new UpdateLedgerRequest()
        .withName(ledgerName)
        .withKmsKey("arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab")
UpdateLedgerResult result = client.updateLedger(request);
```

**Example — Verwenden Sie einen AWS eigenen KMS-Schlüssel**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();
UpdateLedgerRequest request = new UpdateLedgerRequest()
        .withName(ledgerName)
        .withKmsKey("AWS_OWNED_KMS_KEY")
UpdateLedgerResult result = client.updateLedger(request);
```

### Aktualisierung eines Ledgers ()AWS CLI
<a name="ledger-mgmt.basics.update.cli"></a>

Wenn für Ihren `vehicle-registration`-Ledger der Löschschutz aktiviert ist, müssen Sie ihn zunächst deaktivieren, bevor Sie ihn löschen können.

**Example**  

```
aws qldb update-ledger --name vehicle-registration --no-deletion-protection
```

Sie können auch die Einstellungen für die Verschlüsselung im Ruhezustand des Ledgers ändern, um einen vom Kunden verwalteten KMS-Schlüssel zu verwenden.

**Example**  

```
aws qldb update-ledger --name vehicle-registration --kms-key arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
```

Oder Sie können die Einstellungen für Verschlüsselung im Ruhezustand so ändern, dass ein AWS eigener KMS-Schlüssel verwendet wird.

**Example**  

```
aws qldb update-ledger --name vehicle-registration --kms-key AWS_OWNED_KMS_KEY
```

## Aktualisierung eines Ledger-Berechtigungsmodus
<a name="ledger-management.basics.update-permissions"></a>

Mit `UpdateLedgerPermissionsMode` diesem Vorgang können Sie den Berechtigungsmodus eines vorhandenen Ledgers ändern. Wählen Sie eine der folgenden Optionen:
+ **Alle zulassen** — Ein älterer Berechtigungsmodus, der die Zugriffskontrolle mit Granularität auf API-Ebene für Ledger ermöglicht.

  Dieser Modus ermöglicht Benutzern, die `SendCommand`-API-Berechtigung für dieses Ledger zum Ausführen aller PartiQL-Befehle (daher `ALLOW_ALL`) auf beliebigen Tabellen im angegebenen Ledger auszuführen. Dieser Modus ignoriert alle IAM-Berechtigungs-Richtlinien auf Tabellen- oder Befehls-Ebene, die Sie für das Ledger erstellen.
+ **Standard** — (*empfohlen*) Ein Berechtigungsmodus, der eine genauere Zugriffskontrolle für Ledger, Tabellen und PartiQL-Befehle ermöglicht. Wir empfehlen dringend, diesen Berechtigungsmodus zu verwenden, um die Sicherheit Ihrer Ledger-Daten zu maximieren.

  Standardmäßig lehnt dieser Modus alle Anfragen zur Ausführung von PartiQL-Befehlen für Tabellen in diesem Ledger ab. Um PartiQL-Befehle zuzulassen, müssen Sie zusätzlich zur `SendCommand` API-Berechtigung für das Ledger IAM-Berechtigungsrichtlinien für bestimmte Tabellenressourcen und PartiQL-Aktionen erstellen. Weitere Informationen finden Sie unter [Erste Schritte mit dem Standardberechtigungsmodus in Amazon QLDB](getting-started-standard-mode.md).

**Wichtig**  
Bevor Sie in den `STANDARD` Berechtigungsmodus wechseln, müssen Sie zunächst alle erforderlichen IAM-Richtlinien und Tabellen-Tags erstellen, um Störungen für Ihre Benutzer zu vermeiden. Weitere Informationen finden Sie unter. [Umstellung auf den Standard-Berechtigungsmodus](#ledger-mgmt.basics.update-permissions.migrating)

### Aktualisierung eines Ledger-Berechtigungsmodus (Java)
<a name="ledger-mgmt.basics.update-permissions.java"></a>

**Um einen Ledger-Berechtigungsmodus mit dem AWS SDK für Java**

1. Erstellen Sie eine Instance der `AmazonQLDB`-Klasse.

1. Erstellen Sie eine Instance der `UpdateLedgerPermissionsModeRequest`-Klasse, um die Anforderungsinformationen bereitzustellen.

   Sie müssen den Ledger-Namen zusammen mit einem neuen Zeichenfolgenwert für den Berechtigungsmodus angeben.

1. Führen Sie die `updateLedgerPermissionsMode`-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.

Die folgenden Codebeispiele veranschaulichen die vorherigen Schritte. Die Anforderung `updateLedgerPermissionsMode` gibt ein `UpdateLedgerPermissionsModeResult`-Objekt mit aktualisierten Informationen zum Ledger zurück.

**Example — Weisen Sie den Standardberechtigungsmodus zu**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();
UpdateLedgerPermissionsModeRequest request = new UpdateLedgerPermissionsModeRequest()
        .withName(ledgerName)
        .withPermissionsMode(PermissionsMode.STANDARD);
UpdateLedgerPermissionsModeResult result = client.updateLedgerPermissionsMode(request);
```

### Aktualisierung eines Ledger-Berechtigungsmodus ()AWS CLI
<a name="ledger-mgmt.basics.update-permissions.cli"></a>

Weisen Sie Ihrem `vehicle-registration` Ledger den `STANDARD` Berechtigungsmodus zu.

**Example**  

```
aws qldb update-ledger-permissions-mode --name vehicle-registration --permissions-mode STANDARD
```

### Umstellung auf den Standard-Berechtigungsmodus
<a name="ledger-mgmt.basics.update-permissions.migrating"></a>

Für die Migration zum `STANDARD` Berechtigungsmodus empfehlen wir, Ihre QLDB-Zugriffsmuster zu analysieren und IAM-Richtlinien hinzuzufügen, die Ihren Benutzern die entsprechenden Berechtigungen für den Zugriff auf ihre Ressourcen gewähren.

Bevor Sie in den `STANDARD` Berechtigungsmodus wechseln, müssen Sie zunächst alle erforderlichen IAM-Richtlinien und Tabellen-Tags erstellen. Andernfalls kann ein Wechsel des Berechtigungsmodus zu Störungen bei den Benutzern führen, bis Sie entweder die richtigen IAM-Richtlinien erstellt oder den Berechtigungsmodus wieder aktiviert haben. `ALLOW_ALL` Informationen zum Erstellen dieser Richtlinien finden Sie unter. [Erste Schritte mit dem Standardberechtigungsmodus in Amazon QLDB](getting-started-standard-mode.md)

Sie können auch eine AWS verwaltete Richtlinie verwenden, um vollen Zugriff auf alle QLDB-Ressourcen zu gewähren. Die `AmazonQLDBFullAccess` `AmazonQLDBConsoleFullAccess` verwalteten Richtlinien umfassen alle QLDB-Aktionen, einschließlich aller PartiQL-Aktionen. Das Anhängen einer dieser Richtlinien an einen Prinzipal entspricht dem `ALLOW_ALL` Berechtigungsmodus für diesen Prinzipal. Weitere Informationen finden Sie unter [AWS verwaltete Richtlinien für Amazon QLDB](security-iam-awsmanpol.md).

## Ein Ledger löschen
<a name="ledger-management.basics.delete"></a>

Verwenden Sie die Operation `DeleteLedger`, um einen Ledger und seinen gesamten Inhalt zu löschen. Das Löschen eines Ledgers ist ein unwiederbringlicher Vorgang.

Wenn der Löschschutz für Ihr Ledger aktiviert ist, müssen Sie ihn zuerst deaktivieren, bevor Sie das Ledger löschen können.

Wenn Sie eine `DeleteLedger`-Anforderung ausgeben, ändert sich der Status des Ledgers von `ACTIVE` in `DELETING`. Es kann eine Weile dauern, bis der Ledger gelöscht wird, abhängig von der Menge des verwendeten Speichers. Wenn der `DeleteLedger` Vorgang abgeschlossen ist, ist das Ledger nicht mehr in QLDB vorhanden.

### Löschen eines Ledgers (Java)
<a name="ledger-mgmt.basics.delete.java"></a>

**Um ein Ledger mit dem zu löschen AWS SDK für Java**

1. Erstellen Sie eine Instance der `AmazonQLDB`-Klasse.

1. Erstellen Sie eine Instance der `DeleteLedgerRequest`-Klasse und geben Sie den Namen des Ledgers an, den Sie löschen möchten.

1. Führen Sie die `deleteLedger`-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.

Im folgenden Codebeispiel werden die vorherigen Schritte veranschaulicht.

**Example**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();
DeleteLedgerRequest request = new DeleteLedgerRequest().withName(ledgerName);
DeleteLedgerResult result = client.deleteLedger(request);
```

### Löschen eines Ledgers ()AWS CLI
<a name="ledger-mgmt.basics.delete.cli"></a>

Löschen Sie Ihren `vehicle-registration`-Ledger.

**Example**  

```
aws qldb delete-ledger --name vehicle-registration
```

## Ledger auflisten
<a name="ledger-management.basics.list"></a>

Der `ListLedgers` Vorgang gibt zusammenfassende Informationen aller QLDB-Ledger für das aktuelle AWS-Konto Ledger und die Region zurück.

### Ledger auflisten (Java)
<a name="ledger-mgmt.basics.list.java"></a>

**Um Ledger in Ihrem Konto aufzulisten, verwenden Sie AWS SDK für Java**

1. Erstellen Sie eine Instance der `AmazonQLDB`-Klasse.

1. Erstellen Sie eine Instance der `ListLedgersRequest`-Klasse.

   Wenn Sie `NextToken` in der Antwort eines früheren `ListLedgers` Anrufs einen Wert für erhalten haben, müssen Sie diesen Wert in dieser Anfrage angeben, um die nächste Ergebnisseite zu erhalten.

1. Führen Sie die `listLedgers`-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.

1. Die Anforderung `listLedgers` gibt ein `ListLedgersResult`-Objekt zurück. Dieses Objekt verfügt über eine Liste von `LedgerSummary`-Objekten und ein Paginierungs-Token, das angibt, ob weitere Ergebnisse verfügbar sind:
   + Wenn `NextToken` leer ist, wurde die letzte Ergebnisseite verarbeitet und es gibt keine weiteren Ergebnisse.
   + Wenn `NextToken` nicht leer ist, sind weitere Ergebnisse verfügbar. Um die nächste Ergebnisseite abzurufen, verwenden Sie den Wert von `NextToken` in einem nachfolgenden `ListLedgers`-Aufruf.

Im folgenden Codebeispiel werden die vorherigen Schritte veranschaulicht.

**Example**  

```
AmazonQLDB client = AmazonQLDBClientBuilder.standard().build();
List<LedgerSummary> ledgerSummaries = new ArrayList<>();
String nextToken = null;
do {
    ListLedgersRequest request = new ListLedgersRequest().withNextToken(nextToken);
    ListLedgersResult result = client.listLedgers(request);
    ledgerSummaries.addAll(result.getLedgers());
    nextToken = result.getNextToken();
} while (nextToken != null);
```

### Ledger auflisten ()AWS CLI
<a name="ledger-mgmt.basics.list.cli"></a>

Listet alle Ledger in der aktuellen AWS-Konto und der Region auf.

**Example**  

```
aws qldb list-ledgers
```