

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.

# Den aktuellen Konfigurationsstatus von AWS Ressourcen abfragen mit AWS Config
<a name="querying-AWS-resources"></a>


|  | 
| --- |
| Einführung einer Vorschaufunktion für erweiterte Abfragen, mit der Sie mithilfe von Funktionen generativer künstlicher Intelligenz (generative KI) Eingabeaufforderungen in einfachem Englisch eingeben und in ein ready-to-use Abfrageformat konvertieren können. Weitere Informationen finden Sie unter [Abfrageprozessor in natürlicher Sprache für erweiterte Abfragen](https://docs.aws.amazon.com/config/latest/developerguide/query-assistant.html). | 

Sie können AWS Config damit den aktuellen Konfigurationsstatus von AWS Ressourcen auf der Grundlage von Konfigurationseigenschaften für ein einzelnes Konto und eine Region oder für mehrere Konten und Regionen abfragen. Sie können eigenschaftsbasierte Abfragen anhand der Metadaten zum aktuellen AWS Ressourcenstatus in einer Liste unterstützter Ressourcen durchführen. AWS Config Weitere Informationen zu unterstützten Ressourcentypen finden Sie in der [Liste der unterstützten Ressourcentypen für erweiterte Abfragen](https://github.com/awslabs/aws-config-resource-schema/tree/master/config/properties/resource-types).

*Advanced Queries* bietet einen einzigen Abfrageendpunkt und eine Abfragesprache, um Metadaten zum aktuellen Ressourcenstatus abzurufen, ohne dienstspezifische Describe-API-Aufrufe ausführen zu müssen. Sie können Konfigurationsaggregatoren verwenden, um dieselben Abfragen von einem zentralen Konto aus über mehrere Konten und AWS Regionen hinweg auszuführen. 

**Topics**
+ [Features](#query-features)
+ [Abfragekomponenten](query-components.md)
+ [Abfrage-Editor (Konsole)](query-using-sql-editor-console.md)
+ [Abfrage-Editor (AWS CLI)](query-using-sql-editor-cli.md)
+ [Prozessor für Abfragen in natürlicher Sprache](query-assistant.md)
+ [Beispiele für Abfragen](example-query.md)
+ [Beispiel für Beziehungsabfragen](examplerelationshipqueries.md)
+ [Einschränkungen](#query-limitations)
+ [CIDR-Bereich notation/IP](#query-cidr-notation)
+ [Mehrere Eigenschaften innerhalb eines Arrays](#array-property-query-behavior)
+ [Unterstützung von Regionen](#query-regionsupport)

## Features
<a name="query-features"></a>

AWS Config verwendet eine Teilmenge der `SELECT` SQL-Syntax (Structured Query Language), um eigenschaftsbasierte Abfragen und Aggregationen für die aktuellen Configuration Item (CI) -Daten durchzuführen. Die Komplexität der Abfragen reicht von Übereinstimmungen mit and/or Tag-Ressourcen-IDs bis hin zu komplexeren Abfragen, z. B. der Anzeige aller Amazon S3 S3-Buckets, für die die Versionierung deaktiviert ist. Auf diese Weise können Sie genau den aktuellen Ressourcenstatus abfragen, den Sie benötigen, ohne AWS dienstspezifische API-Aufrufe durchführen zu müssen.

Aggregationsfunktionen wie `AVG`, `COUNT`, `MAX`, `MIN` und `SUM` werden unterstützt.

Sie können erweiterte Abfragen für Folgendes verwenden:
+ Bestandsverwaltung, um beispielsweise eine Liste mit Amazon-EC2-Instances einer bestimmten Größe abzufragen.
+ Sicherheits- und Betriebsinformationen, um beispielsweise eine Liste mit Ressourcen abzufragen, bei denen eine bestimmte Konfigurationseigenschaft aktiviert bzw. deaktiviert ist.
+ Kostenoptimierung, um beispielsweise eine Liste mit Amazon-EBS-Volumes zu identifizieren, die keiner EC2-Instance angefügt sind.
+ Compliance-Daten, z. B. um eine Liste all Ihrer Conformance Packs und deren Compliance-Status abzurufen.

Informationen zur Verwendung der AWS SQL-Abfragesprache finden Sie unter [Was ist SQL (Structured Query Language)](https://aws.amazon.com/what-is/sql/)? .

## Einschränkungen
<a name="query-limitations"></a>

**Anmerkung**  
Advanced Query unterstützt nicht das Abfragen von Ressourcen, die nicht für die Aufzeichnung durch den Konfigurationsrekorder konfiguriert wurden. AWS Config erstellt Konfigurationselemente (CIs) mit`ResourceNotRecorded`, `configurationItemStatus` wenn eine Ressource erkannt wurde, aber nicht für die Aufzeichnung durch den Konfigurationsrekorder konfiguriert ist. Ein Aggregator aggregiert diese Daten CIs, eine erweiterte Abfrage unterstützt jedoch keine Abfragen CIs mit. `ResourceNotRecorded` Aktualisieren Sie Ihre Recorder-Einstellungen, um die Aufzeichnung der Ressourcentypen zu ermöglichen, die Sie abfragen möchten.

Als Teilbereich von SQL-`SELECT` weist die Abfragesyntax folgende Einschränkungen auf:
+ Keine Unterstützung für die Schlüsselwörter `ALL`, `AS`, `DISTINCT`, `FROM`, `HAVING`, `JOIN` und `UNION` in einer Abfrage. Abfragen von `NULL`-Werten werden nicht unterstützt.
+ Keine Unterstützung für komplexe `CASE` Anweisungen zur Erstellung eines Prioritätsfeldes direkt in der Abfrage.
+ Keine Unterstützung für Abfragen von Ressourcen von Drittanbietern. Bei Ressourcen von Drittanbietern, die mit erweiterten Abfragen abgerufen wurden, ist das Konfigurationsfeld auf `NULL` festgelegt.
+ Keine Unterstützung für verschachtelte Strukturen (wie Tags), die mit SQL-Abfragen entpackt werden.
+ Keine Unterstützung für das Abfragen gelöschter Ressourcen. Informationen zum Auffinden gelöschter Ressourcen finden Sie unter [Ressourcen suchen, die entdeckt wurden von AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/looking-up-discovered-resources.html).
+ Die Kurznotation „`SELECT` alle Spalten“ (d. h. `SELECT *`) wählt ausschließlich die obersten, skalaren Eigenschaften eines CI aus. Die zurückgegebenen skalaren Eigenschaften lauten `accountId`, `awsRegion`, `arn`, `availabilityZone`, `configurationItemCaptureTime`, `resourceCreationTime`, `resourceId`, `resourceName`, `resourceType` und `version`.
+ Platzhalterbeschränkungen:
  + Platzhalter werden nur für Eigenschaftswerte und nicht für Eigenschaftsschlüssel unterstützt (z. B. wird `...WHERE someKey LIKE 'someValue%'` unterstützt, `...WHERE 'someKey%' LIKE 'someValue%'` jedoch nicht).
  + Unterstützt werden nur Suffixplatzhalter (z. B. werden `...LIKE 'AWS::EC2::%'` und `...LIKE 'AWS::EC2::_'` unterstützt, `...LIKE '%::EC2::Instance'` und `...LIKE '_::EC2::Instance'` jedoch nicht).
  + Platzhalterübereinstimmungen müssen aus mindestens drei Zeichen bestehen (z. B. sind `...LIKE 'ab%'` und `...LIKE 'ab_'` nicht zulässig, aber `...LIKE 'abc%'` und `...LIKE 'abc_'` sind zulässig). 
**Anmerkung**  
„`_`“ (einzelner Unterstrich) wird ebenfalls als Platzhalter behandelt.
+ Aggregationsbeschränkungen:
  + Aggregationsfunktionen akzeptieren ausschließlich ein einziges Argument oder eine einzige Eingenschaft.
  + Aggregatfunktionen nehmen keine anderen Funktionen als Argumente an.
  + `GROUP BY` mit einer `ORDER BY`-Klausel, die auf Aggregatfunktionen verweist, darf nur eine einzige Eigenschaft enthalten.
  + Für alle anderen Aggregationen können `GROUP BY`-Klauseln bis zu drei Eigenschaften enthalten.
  + Die Paginierung wird für alle Aggregatabfragen unterstützt, es sei denn, die `ORDER BY`-Klausel hat eine Aggregatfunktion. `GROUP BY X, ORDER BY Y` funktioniert z. B. nicht, wenn `Y` eine Aggregatfunktion ist.
  + Keine Unterstützung für `HAVING`-Klauseln in Aggregationen.
+ Einschränkungen bei nicht übereinstimmenden Bezeichnern:

  Nicht übereinstimmende Bezeichner sind Eigenschaften, die dieselbe Schreibweise, aber unterschiedliche Groß- und Kleinschreibung aufweisen. Die erweiterte Abfrage unterstützt nicht die Verarbeitung von Abfragen, die nicht übereinstimmende Bezeichner enthalten. Beispiel:
  + Zwei Eigenschaften mit exakt derselben Schreibweise, aber mit unterschiedlicher Groß- und Kleinschreibung (`configuration.dbclusterIdentifier` und `configuration.dBClusterIdentifier`).
  + Zwei Eigenschaften, bei denen eine Eigenschaft eine Teilmenge der anderen ist und die Groß- und Kleinschreibung (`configuration.ipAddress` und `configuration.ipaddressPermissions`) unterschiedlich ist.

## Verhalten des notation/IP CIDR-Bereichs für erweiterte Abfragen
<a name="query-cidr-notation"></a>

Die CIDR-Notation wird für die Suche in IP-Bereiche konvertiert.

Das bedeutet, dass mit `"="` und `"BETWEEN"` nach allen Bereichen gesucht wird, die die angegebene IP enthalten, nicht nach einem bestimmten Bereich.

Um nach einem exakten IP-Bereich zu suchen, müssen Sie zusätzliche Bedingungen für den Ausschluss IPs außerhalb des Bereichs hinzufügen.

**Example Auf der Suche nach dem exakten CIDR-Block 10.0.0.0/24**  

```
SELECT * WHERE resourceType = 'AWS::EC2::SecurityGroup'
  AND configuration.ipPermissions.ipRanges BETWEEN '10.0.0.0'
  AND '10.0.0.255'
  AND NOT configuration.ipPermissions.ipRanges < '10.0.0.0'
  AND NOT configuration.ipPermissions.ipRanges > '10.0.0.255'
```

**Example Auf der Suche nach der exakten IP-Adresse 192.168.0.2/32**  

```
SELECT * WHERE resourceType = 'AWS::EC2::SecurityGroup'
  AND configuration.ipPermissions.ipRanges = '192.168.0.2'
  AND NOT configuration.ipPermissions.ipRanges > '192.168.0.2'
  AND NOT configuration.ipPermissions.ipRanges < '192.168.0.2'
```

## Verhalten mehrerer Eigenschaften innerhalb eines Arrays für erweiterte Abfragen
<a name="array-property-query-behavior"></a>

Bei der Abfrage mehrerer Eigenschaften innerhalb eines Arrays von Objekten werden Übereinstimmungen für *alle Array-Elemente* berechnet.

Für eine Ressource R mit den Regeln A und B ist die Ressource beispielsweise konform mit Regel A, aber nicht konform mit Regel B. Die Ressource R wird wie folgt gespeichert:

```
{ 
    configRuleList: [ 
        {
            configRuleName: 'A', complianceType: 'compliant'
        }, 
        {   
            configRuleName: 'B', complianceType: 'non_compliant'
        } 
    ]
}
```

R wird von dieser Abfrage zurückgegeben:

```
SELECT configuration WHERE configuration.configRuleList.complianceType = 'non_compliant' 
AND configuration.configRuleList.configRuleName = 'A'
```

Die erste Bedingung `configuration.configRuleList.complianceType = 'non_compliant'` wird auf ALLE Elemente in R angewendet. configRuleList Da R eine Regel (Regel B) mit complianceType = 'non\$1compliant' hat, wird die Bedingung als wahr bewertet.

Die zweite Bedingung `configuration.configRuleList.configRuleName` wird auf ALLE Elemente in R configRuleList angewendet. Da R eine Regel (Regel A) mit configRuleName = 'A' hat, wird die Bedingung als wahr bewertet. Da beide Bedingungen „true“ sind, wird R zurückgegeben.

## Unterstützung von Regionen
<a name="query-regionsupport"></a>

Erweiterte Abfragen werden in den folgenden Regionen unterstützt:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/config/latest/developerguide/querying-AWS-resources.html)