
Ein AWS-Tool, das Ihnen hilft, eine Momentaufnahme-Bewertung Ihres AWS-Kontos mit Prowler zu erstellen.
## Self-Service Security Assessment Solutions (v2.0)<!-- omit from toc -->
Cybersicherheit bleibt ein sehr wichtiges Thema und ein Punkt der Besorgnis für viele CIOs, CISOs und ihre Kunden. Um diesen wichtigen Anliegen gerecht zu werden, hat AWS eine grundlegende Sammlung von Services entwickelt, die Kunden zum Schutz ihrer Konten nutzen sollten. [Amazon GuardDuty](https://aws.amazon.com/guardduty/), [AWS Security Hub](https://aws.amazon.com/security-hub/), [AWS Config](https://aws.amazon.com/config/) und [AWS Well-Architected](https://aws.amazon.com/architecture/well-architected/?wa-lens-whitepapers.sort-by=item.additionalFields.sortDate&wa-lens-whitepapers.sort-order=desc&wa-guidance-whitepapers.sort-by=item.additionalFields.sortDate&wa-guidance-whitepapers.sort-order=desc)-Reviews helfen Kunden, eine starke Sicherheitslage für ihre AWS-Konten aufrechtzuerhalten. Da immer mehr Organisationen in die Cloud migrieren, insbesondere wenn dies schnell geschieht und die empfohlenen AWS-Services noch nicht implementiert wurden, kann die Notwendigkeit bestehen, eine schnelle Sicherheitsbewertung der Cloud-Umgebung durchzuführen.
Wir haben eine kostengünstige, einfach bereitzustellende, sichere und schnelle Lösung entwickelt, um unseren Kunden einen Sicherheitsbewertungsbericht zur Verfügung zu stellen. Diese Berichte werden mit dem Open-Source-Projekt [Prowler](https://github.com/prowler-cloud/prowler) erstellt. Prowler führt eine zeitpunktbezogene Sicherheitsbewertung basierend auf AWS Best Practices durch und kann helfen, potenzielle Risikobereiche in der bereitgestellten Umgebung eines Kunden schnell zu identifizieren. Wenn Sie daran interessiert sind, diese Bewertungen kontinuierlich durchzuführen, empfiehlt AWS die Aktivierung des [Foundational Security Best Practices standard](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-fsbp.html) von Security Hub. Wenn Sie daran interessiert sind, Ihre Prowler-Bewertungsergebnisse in Security Hub zu integrieren, können Sie die Anweisungen in der [Prowler Documentation](https://docs.prowler.cloud/en/latest/tutorials/aws/securityhub/) befolgen.
>Hinweis: Prowler ist keine AWS-eigene Lösung. Kunden sollten Prowler unabhängig überprüfen, bevor sie diese Lösung ausführen. Alle mit Prowler verbundenen Abhängigkeiten sollten aktuell gehalten werden. Diese Lösung installiert eine festgelegte Version von Prowler (derzeit 5.41.0) über den pip-Paketinstaller, damit eine Änderung des Ausgabeformats von Prowler einen Scan nicht ohne Warnung beeinträchtigen kann. Um auf eine neuere Version umzusteigen, bearbeiten Sie die Zeile `pip3 install prowler==` in `2-sat2-codebuild-prowler.yaml`.
📕 Für ausführlichere Schritt-für-Schritt-Anleitungen besuchen Sie Modul 2 im [SHIP Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/3bd6e4da-265a-4c79-ab47-639b7ef23c9d/en-US/20-satv2).
## Table of Contents<!-- omit from toc -->
- [Overview](#overview)
- [Parameters](#parameters)
- [Deployment](#deployment)
- [Single account scan](#single-account-scan)
- [AWS CloudShell](#aws-cloudshell)
- [Deploy the solution](#deploy-the-solution)
- [AWS Console](#aws-console)
- [Deploy the solution](#deploy-the-solution-1)
- [Multi-account scan](#multi-account-scan)
- [AWS CloudShell](#aws-cloudshell-1)
- [Step 1: Deploy prerequisite role](#step-1-deploy-prerequisite-role)
- [Step 2: Deploy the SATv2 solution](#step-2-deploy-the-satv2-solution)
- [AWS Console](#aws-console-1)
- [Step 1: Deploy prerequisite role](#step-1-deploy-prerequisite-role-1)
- [Step 2: Enable delegated administrator for AWS Organizations](#step-2-enable-delegated-administrator-for-aws-organizations)
- [Step 3: Deploy the SATv2 solution](#step-3-deploy-the-satv2-solution)
- [Review the results](#review-the-results)
- [SATv2 Dashboard (recommended)](#satv2-dashboard-recommended)
- [Prowler Dashboard](#prowler-dashboard)
- [Scan types](#scan-types)
- [Basic Scan](#basic-scan)
- [Intermediate scan](#intermediate-scan)
- [Full scan](#full-scan)
- [Secrets checks](#secrets-checks)
- [Notifications](#notifications)
- [Reporting Summary](#reporting-summary)
- [How the Athena table is built](#how-the-athena-table-is-built)
- [Scan history and duplicates](#scan-history-and-duplicates)
- [Frequently Asked Questions (FAQ)](#frequently-asked-questions-faq)
- [Clean Up](#clean-up)
- [Security](#security)
- [License](#license)
## Overview
Die Lösung wird mit [AWS CloudFormation](https://aws.amazon.com/cloudformation/) bereitgestellt. Bei der Bereitstellung werden ein [AWS CodeBuild](https://aws.amazon.com/codebuild/)-Projekt und ein [Amazon S3](https://aws.amazon.com/s3/)-Bucket zum Speichern der von Prowler generierten Berichte erstellt. Anschließend wird eine [AWS Lambda](https://aws.amazon.com/lambda/)-Funktion verwendet, um das AWS CodeBuild-Projekt zu starten.
Die Standardwerte der Parameter (Benutzereingaben) führen einen Basis-Scan in einem einzelnen Konto aus. Sie können jedoch verschiedene Parameter wählen, um umfangreichere Scans durchzuführen oder mehrere Konten zu scannen. Der Bereitstellungsprozess dauert weniger als 5 Minuten. Die AWS CloudFormation-Vorlagen der Lösung stehen zur Überprüfung in diesem GitHub-Repository zur Verfügung.
Nach der Bereitstellung der Vorlage wird das CodeBuild-Projekt ausgeführt. Die Standardbewertung dauert etwa 5 Minuten. Die Zeit bis zum Abschluss einer Sicherheitsbewertung variiert je nach Anzahl der Ressourcen und den ausgewählten Scan-Optionen. Am Ende der Bewertungen werden die Berichte in den erstellten S3-Bucket geliefert.

## Parameters
SATv2 kann durch Aktualisieren der CloudFormation-Parameter angepasst werden. Dieser Abschnitt fasst die verfügbaren Optionen zusammen und enthält einen Link zu dem Abschnitt mit weiteren Informationen.
| Parameter | Description | More information |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- |
| ProwlerScanType | Specify which type of scan to perform. Selecting full without specifying different ProwlerOptions will do a full scan. To perform a specific check, choose Full and append -c <check> to ProwlerOptions. | [Scan types](#scan-types) |
| ExcludeSecretsChecks | Defaults to true, which skips the Prowler checks that search resource content for hardcoded secrets. Set to false to run them. | [Secrets checks](#secrets-checks) |
| MultiAccountScan | Set this to true if you want to scan all accounts in your organization. You must have deployed the prerequisite template to provision a role, or specify a different ProwlerRole with the appropriate permissions. | [Multi-account scan](#multi-account-scan) |
| Reporting | Set this to true if you want to summarize the Prowler reports into a single csv. This is helpful when scanning multiple accounts. | [Reporting Summary](#reporting-summary) |
| EmailAddress | Specify an address if you want to receive an email when the assessment completes. | [Notifications](#notifications) |
| **Advanced Parameters** |
| ConcurrentAccountScans | For multi-account scans, specify the number of accounts to scan concurrently. This is useful for large organizations with many accounts. Selecting more than three changes the size of the CodeBuild instance and may incur additional costs. |
| CodeBuildTimeout | Set the timeout for the CodeBuild job. The default is 300 minutes (5 hours). |
| MultiAccountListOverride | Specify a space delimited list of accounts to scan. Leaving this blank will scan all accounts in your organization. Ensure that you have set `MultiAccountScan` parameter above to true if you want to scan specific accounts. If you can't provide delegated ListAccount access, you can provide the MultiAccountListOverride parameter. | [Multi-account scan](#multi-account-scan) |
| ProwlerOptions | Specify the parameters for Prowler. The --role and ARN will automatically be added to the end of the parameters you specify. This can also be used to specify a single check. | [Full scan](#full-scan) |
| ProwlerRole | The role that Prowler should assume to perform the scan. Change this if you want to specify your own role with different permissions. |
## Deployment
Sie können dieses Projekt verwenden, um Prowler über mehrere Konten in einer AWS Organization oder in einem einzelnen Konto auszuführen. Wir bieten Anweisungen zur Verwendung von AWS CloudShell oder der AWS-Konsole. Wählen Sie eine Option, um zu beginnen.
| Deployment Type | AWS CloudShell | AWS console |
| --------------- | ------------------------- | ---------------------- |
| Single account | [Link](#aws-cloudshell) | [Link](#aws-console) |
| Multi-account | [Link](#aws-cloudshell-1) | [Link](#aws-console-1) |
## Single account scan
Um die Self-Service Security Assessment solution (SATv2) gegen ein einzelnes Konto auszuführen, befolgen Sie die nachstehenden Anweisungen. Sie können wählen, ob Sie die AWS CLI oder die AWS-Konsole verwenden möchten.
### AWS CloudShell
<details>
<summary>Show steps</summary>
#### Deploy the solution
1. Melden Sie sich bei Ihrem AWS-Konto an.
2. Wählen Sie in der Navigationsleiste [AWS CloudShell](https://console.aws.amazon.com/cloudshell/home).
3. Um die CloudFormation-Vorlage herunterzuladen, geben Sie den folgenden Befehl ein.
```bash
wget https://raw.githubusercontent.com/awslabs/aws-security-assessment-solution/main/2-sat2-codebuild-prowler.yaml
```
4. Um einen S3-Bucket zum Bereitstellen der Vorlage zu erstellen, geben Sie die folgenden Befehle ein. Die Vorlage ist größer als 51.200 Bytes, daher muss sie von CloudFormation in S3 hochgeladen werden, anstatt inline übergeben zu werden.
```bash
TEMPLATE_BUCKET=sat2-cfn-templates-$(aws sts get-caller-identity --query Account --output text)-$AWS_REGION
aws s3 mb s3://$TEMPLATE_BUCKET --region $AWS_REGION
```
5. Um die CloudFormation-Vorlage bereitzustellen, geben Sie den folgenden Befehl ein. Die Option `--s3-bucket` lädt die Vorlage in den Bucket hoch, bevor der Stack erstellt wird.
```bash
aws cloudformation deploy --template-file 2-sat2-codebuild-prowler.yaml \
--stack-name sat2 \
--capabilities CAPABILITY_NAMED_IAM \
--s3-bucket $TEMPLATE_BUCKET
```
6. Nachdem der Stack erstellt wurde, können Sie den Staging-Bucket löschen. Er wird nur verwendet, um die Vorlage an CloudFormation zu übergeben.
```bash
aws s3 rb s3://$TEMPLATE_BUCKET --force
```
</details>
### AWS Console
<details>
<summary>Show steps</summary>
#### Deploy the solution
1. Laden Sie die CloudFormation-Vorlage [2-sat2-codebuild-prowler.yaml](https://github.com/awslabs/aws-security-assessment-solution/blob/main/2-sat2-codebuild-prowler.yaml) herunter.
2. Navigieren Sie zur [AWS CloudFormation console](https://console.aws.amazon.com/cloudformation).
3. Wählen Sie im Navigationsbereich **Stacks**.
4. Wählen Sie **Create stack**.
5. Wählen Sie unter Specify template die Option **Upload a template file**.
6. Wählen Sie **2-sat2-codebuild-prowler.yaml**, die Sie in Schritt 1 heruntergeladen haben.
7. Wählen Sie **Next**.
8. Geben Sie für Stack name **sat2** ein.
9. Wählen Sie **Next**.
10. Wählen Sie auf der Seite Configure stack options die Option **Next**.
11. Aktivieren Sie auf der Seite Review SAS das Kontrollkästchen **I acknowledge that AWS CloudFormation might create IAM resources.** und wählen Sie **Submit**.
</details>
## Multi-account scan
Die Self-Service Security Assessment solution (SAT) unterstützt auch Multi-Account-Scans. Sie müssen eine Voraussetzungsrolle in jedem Konto bereitstellen, in dem Sie den Scan durchführen möchten. Um SATv2 für mehrere Konten auszuführen, befolgen Sie die nachstehenden Anweisungen. Sie können wählen, ob Sie die AWS CLI oder die AWS-Konsole verwenden möchten.
Diese Anweisungen setzen voraus, dass Sie bereits die Voraussetzungen für Stack-Set-Operationen erfüllt haben. Weitere Informationen finden Sie im [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html).
>Hinweis: StackSets gelten nicht für das Management-Konto. Um das Management-Konto zu bewerten, stellen Sie die 1-sat2-member-role als CloudFormation-Stack bereit.
### AWS CloudShell
<details>
<summary>Show steps</summary>
#### Step 1: Deploy prerequisite role
1. Melden Sie sich bei Ihrem AWS Management-Konto an.
2. Wählen Sie in der Navigationsleiste [AWS CloudShell](https://console.aws.amazon.com/cloudshell/home).
3. Identifizieren Sie, von welchem Konto aus Sie den Prowler-Scan ausführen werden. Kunden verwenden typischerweise ein Security-Tooling-Konto oder ein Audit-Konto. Notieren Sie sich die Konto-ID für den Parameter **ProwlerAccountID**.
4. Um die CloudFormation-Vorlage herunterzuladen, geben Sie den folgenden Befehl ein.
```bash
wget https://raw.githubusercontent.com/awslabs/aws-security-assessment-solution/main/1-sat2-member-roles.yaml
```
5. Stellen Sie die CloudFormation-Vorlage über CloudFormation StackSets bereit. Aktualisieren Sie die folgenden Parameter:
- Ersetzen Sie **\<aws-account-id\>** durch die Konto-ID, von der aus Sie Prowler ausführen werden.
- Ersetzen Sie **\<region\>** durch die Region, in der Sie die Vorlage bereitstellen möchten.
```bash
aws cloudformation create-stack-set --template-body file://1-sat2-member-roles.yaml \
--stack-set-name sat2-member-roles \
--permission-model SERVICE_MANAGED \
--auto-deployment Enabled=true,RetainStacksOnAccountRemoval=false \
--capabilities CAPABILITY_NAMED_IAM \
--parameters ParameterKey=ProwlerAccountID,ParameterValue=<aws-account-id> \
--region <region>
```
6. Verwenden Sie den folgenden Befehl, um Stack-Instanzen für jedes Konto in Ihrer Organisation zu erstellen. Sie können eine bestimmte OU oder die Root-OU anvisieren. Aktualisieren Sie die folgenden Parameter:
- Ersetzen Sie **\<root-ou\>** durch die [organization root ID](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_details.html#orgs_view_root).
- Ersetzen Sie **\<region\>** durch die Region, in der Sie die Vorlage bereitstellen möchten.
```bash
aws cloudformation create-stack-instances --stack-set-name sat2-member-roles \
--deployment-targets OrganizationalUnitIds='["<root-ou>"]' \
--regions '["<region>"]' \
--operation-preferences FailureTolerancePercentage=100,MaxConcurrentPercentage=100 \
--region <region>
```
7. Stellen Sie fest, ob Sie einen delegierten Administrator oder eine Ressourcenrichtlinie haben, die bereits für Ihr Prowler-Konto existiert. Es ist nur eine Option erforderlich, und eine Ressourcenrichtlinie wird empfohlen, da sie granularer ist.
>Hinweis: Ressourcenrichtlinien sind in GovCloud nicht verfügbar, daher müssen Sie einen delegierten Administrator verwenden.
7a. Ihr Prowler-Konto hat möglicherweise bereits eine Delegierung. Sie können die folgenden Befehle verwenden, um dies zu überprüfen:
```bash
aws organizations list-delegated-administrators
```
7b. Ihr Prowler-Konto hat möglicherweise bereits eine Ressourcenrichtlinie. Sie können die folgenden Befehle verwenden, um dies zu überprüfen:
```bash
aws organizations describe-resource-policy
```
8. Wenn Sie keinen delegierten Administrator oder keine Ressourcenrichtlinie haben, können Sie die folgenden Befehle verwenden, um den entsprechenden Zugriff hinzuzufügen.
>Hinweis: Wenn Sie keinen delegierten ListAccount-Zugriff bereitstellen können, können Sie den Parameter MultiAccountListOverride in der `2-sat2-codebuild-prowler template` angeben.
>Hinweis: Wenn Sie GovCloud verwenden, verwenden Sie Schritt 8a, um einen delegierten Administrator zu erstellen. Wenn Sie eine kommerzielle Region verwenden, verwenden Sie Schritt 8b, um Least-Privilege-Zugriff auf ListAccounts bereitzustellen.
8a. Verwenden Sie den folgenden Befehl, um einen Administrator zu delegieren, falls Sie noch keinen haben. Ersetzen Sie **\<aws-account-id\>** durch die Konto-ID, von der aus Sie Prowler ausführen werden.
```bash
aws organizations register-delegated-administrator <aws-account-id>
```
8b. Verwenden Sie die folgenden Befehle, um eine Ressourcenrichtlinie hinzuzufügen.
- Ersetzen Sie **\<aws-account-id\>** durch die Konto-ID, von der aus Sie Prowler ausführen werden.
```bash
aws organizations put-resource-policy --content \
'{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<aws-account-id>:root"
},
"Action": [
"organizations:ListAccounts",
"organizations:DescribeAccount",
"organizations:ListTagsForResource",
"organizations:ListParents",
"organizations:DescribeOrganizationalUnit"
],
"Resource": "*"
}
]
}'
```
>Hinweis: `ListParents` und `DescribeOrganizationalUnit` sind dafür verantwortlich, dass die Spalten `account_ou_uid` und `account_ou_name` in den Findings gefüllt werden. Lassen Sie sie weg, funktioniert der Rest des Scans weiterhin, aber diese beiden Spalten bleiben leer.
#### Step 2: Deploy the SATv2 solution
>Hinweis: Stellen Sie sicher, dass Sie zu dem Konto gewechselt haben, das Sie für die Ausführung von Prowler angegeben haben.
1. Um die Vorlage herunterzuladen, öffnen Sie AWS CloudShell im **Prowler account** und geben Sie den folgenden Befehl ein.
```bash
wget https://raw.githubusercontent.com/awslabs/aws-security-assessment-solution/main/2-sat2-codebuild-prowler.yaml
```
2. Um einen S3-Bucket zum Bereitstellen der Vorlage zu erstellen, geben Sie die folgenden Befehle ein. Die Vorlage ist größer als 51.200 Bytes, daher muss sie von CloudFormation in S3 hochgeladen werden, anstatt inline übergeben zu werden.
```bash
TEMPLATE_BUCKET=sat2-cfn-templates-$(aws sts get-caller-identity --query Account --output text)-$AWS_REGION
aws s3 mb s3://$TEMPLATE_BUCKET --region $AWS_REGION
```
3. Um die Vorlage im Prowler-Konto bereitzustellen. Setzen Sie **MultiAccountScan** auf **true**, um alle Konten in Ihrer Organisation zu scannen. Die Option `--s3-bucket` lädt die Vorlage in den Bucket hoch, bevor der Stack erstellt wird.
```bash
aws cloudformation deploy --template-file 2-sat2-codebuild-prowler.yaml \
--stack-name sat2-prowler \
--capabilities CAPABILITY_NAMED_IAM \
--s3-bucket $TEMPLATE_BUCKET \
--parameter-overrides MultiAccountScan=true
```
4. Nachdem der Stack erstellt wurde, können Sie den Staging-Bucket löschen. Er wird nur verwendet, um die Vorlage an CloudFormation zu übergeben.
```bash
aws s3 rb s3://$TEMPLATE_BUCKET --force
```
</details>
### AWS Console
<details>
<summary>Show steps</summary>#### Schritt 1: Voraussetzungsrolle bereitstellen
1. Laden Sie die Dateien **1-sat2-member-roles.yaml** und **2-sat2-codebuild-prowler.yaml** herunter.
2. Stellen Sie die CloudFormation-Vorlage über CloudFormation StackSets bereit. Aktualisieren Sie die folgenden Parameter:
- Ersetzen Sie \<aws-account-id\> durch die Konto-ID, von der aus Sie Prowler ausführen werden.
- Ersetzen Sie \<region\> durch die Region, in der Sie die Vorlage bereitstellen möchten.
3. Navigieren Sie zur [AWS CloudFormation-Konsole](https://console.aws.amazon.com/cloudformation).
4. Wählen Sie im Navigationsbereich **StackSets**.
5. Wählen Sie **StackSet erstellen**.
6. Belassen Sie unter Berechtigungen die Option **Dienstverwaltete Berechtigungen** ausgewählt.
7. Wählen Sie unter Vorlage angeben die Option **Vorlagendatei hochladen**.
8. Wählen Sie **1-sat2-member-roles.yaml**, die Sie in Schritt 1-1 heruntergeladen haben.
9. Wählen Sie **Weiter**.
10. Geben Sie für Stack-Name **sat2-member-role** ein.
11. Geben Sie für Parameter Folgendes ein:
- ProwlerAccountID – Die Konto-ID, von der aus Sie Prowler ausführen werden.
12. Wählen Sie **Weiter**.
13. Wählen Sie auf der Seite „StackSet-Optionen konfigurieren“ die Option **Weiter**.
14. Geben Sie unter „Bereitstellungsoptionen festlegen“ Folgendes ein:
1. Belassen Sie für **Bereitstellungsziele** die Option **In Organisation bereitstellen** ausgewählt.
2. Wählen Sie für **Regionen angeben** die Option **us-east-1**.
3. Wählen Sie für **Regionsparallelität** die Option **Parallel**.
15. Wählen Sie **Weiter**.
16. Aktivieren Sie auf der Seite **Überprüfen** das Kontrollkästchen **Ich bestätige, dass AWS CloudFormation möglicherweise IAM-Ressourcen erstellt.** und wählen Sie **Senden**.
#### Schritt 2: Delegierten Administrator für AWS Organizations aktivieren
Ermitteln Sie, ob für das Konto, in dem Sie Prowler bereitstellen möchten, bereits ein delegierter Administrator oder eine Ressourcenrichtlinie vorhanden ist. Es wird empfohlen, Prowler von Ihrem Sicherheits-Tooling-Konto (Audit) aus auszuführen. Um zu aktualisieren oder zu überprüfen, ob das Audit-Konto Berechtigungen für ListAccounts hat, führen Sie die folgenden Schritte aus.
1. Navigieren Sie zur [AWS Organization-Konsole](https://console.aws.amazon.com/organizations).
2. Wählen Sie im Navigationsbereich **Einstellungen**.
3. Fügen Sie für Delegierter Administrator für AWS Organizations die folgende Anweisung ein.
```json
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<aws-account-id>:root"
},
"Action": [
"organizations:ListAccounts",
"organizations:DescribeAccount",
"organizations:ListTagsForResource",
"organizations:ListParents",
"organizations:DescribeOrganizationalUnit"
],
"Resource": "*"
}
]
}
```
>Hinweis: `ListParents` und `DescribeOrganizationalUnit` sind dafür verantwortlich, dass die Spalten `account_ou_uid` und `account_ou_name` in den Findings gefüllt werden. Lassen Sie sie weg, funktioniert der restliche Scan weiterhin, aber diese beiden Spalten bleiben leer.
#### Schritt 3: Die SATv2-Lösung bereitstellen
1. Navigieren Sie in dem Konto, von dem aus Sie das Tool ausführen werden (ProwlerAccountID), zur [AWS CloudFormation-Konsole](https://console.aws.amazon.com/cloudformation).
2. Wählen Sie im Navigationsbereich **Stacks**.
3. Wählen Sie **Stack erstellen**.
4. Wählen Sie unter Vorlage angeben die Option **Vorlagendatei hochladen**.
5. Wählen Sie **2-sat2-codebuild-prowler.yaml**, die Sie in Schritt 1-1 heruntergeladen haben.
6. Wählen Sie **Weiter**.
7. Geben Sie für Stack-Name **sat2-prowler** ein.
8. Wählen Sie im Abschnitt Parameter für **MultiAccountScan** die Option **true**.
9. Optional können Sie das Reporting aktivieren, um eine Zusammenfassung aller Konten in einer einzigen CSV-Datei zu erhalten. Wählen Sie für **Reporting** die Option **true**.
10. Wählen Sie **Weiter**.
11. Wählen Sie auf der Seite „Stack-Optionen konfigurieren“ die Option **Weiter**.
12. Aktivieren Sie auf der Seite „SAS überprüfen“ das Kontrollkästchen **Ich bestätige, dass AWS CloudFormation möglicherweise IAM-Ressourcen erstellt.** und wählen Sie **Senden**.
</details>
## Die Ergebnisse überprüfen
Nachdem die Lösung bereitgestellt wurde, startet eine Lambda-Funktion das CodeBuild-Projekt. Nachdem das CodeBuild-Projekt den Build abgeschlossen hat, werden die Prowler-Ergebnisse in den erstellten Amazon S3-Bucket hochgeladen. Wenn Sie [Benachrichtigungen](#notifications) konfiguriert haben, erhalten Sie eine E-Mail, wenn der Prowler-Scan abgeschlossen ist. Wenn Sie [Reporting](#reporting-summary) konfiguriert haben, finden Sie eine konsolidierte CSV-Datei im Ordner /reports.
Wenn Sie keine E-Mail-Benachrichtigungen konfiguriert haben, können Sie den Fortschritt über die [CodeBuild-Konsole](https://console.aws.amazon.com/codesuite/codebuild/projects) überwachen.
Um die Ergebnisse zu überprüfen, führen Sie die folgenden Schritte aus.
1. Navigieren Sie in dem Konto, in dem Sie Prowler bereitgestellt haben, zur Amazon S3-Konsole.
2. Wählen Sie den Bucket aus, der mit **sat2-prowler-prowlerfindingsbucket-** beginnt.
3. Wählen Sie den Ordner für das gewünschte Ausgabeformat und dann die Ordner `scan_date=` und `scan_time=` für den Lauf aus, den Sie überprüfen möchten.
Jedes Ausgabeformat hat einen eigenen Ordner auf oberster Ebene, und jeder Lauf schreibt in einen Unterordner `scan_date=YYYY-MM-DD/scan_time=HHMMSS` darunter. Die Uhrzeit ist die UTC-Zeit, zu der der Scan gestartet wurde:
```
csv/scan_date=2026-09-01/scan_time=204955/ Prowlers CSV-Findings, wie geschrieben
html/scan_date=2026-09-01/scan_time=204955/ HTML-Berichte pro Konto
json/scan_date=2026-09-01/scan_time=204955/ JSON pro Konto
ocsf-json/scan_date=2026-09-01/scan_time=204955/ OCSF-JSON pro Konto
parquet/scan_date=2026-09-01/scan_time=204955/ die Kopie, die Athena abfragt
compliance/scan_date=2026-09-01/scan_time=204955/ Compliance-CSVs, sofern erzeugt
reports/ konsolidierte CSV und Dashboard
```
Jeder Lauf erhält seinen eigenen Ordner, sodass beim erneuten Ausführen der Lösung neue Findings niemals mit alten vermischt werden, auch wenn Sie sie mehr als einmal am selben Tag ausführen. Frühere Läufe bleiben erhalten, damit Sie sie vergleichen können.
4. Für jedes Konto gibt es 4 Dateitypen (csv, html, json, json-ocsf) im Format `prowler-output-<aws-account-id>-<datetime>`.
5. Wählen Sie eines der HTML-Objekte aus.
6. Wählen Sie **Öffnen**.

7. Ein neues Fenster mit Ihrem Bericht wird geöffnet. Sie können die Filter verwenden, um die Findings zu identifizieren und zu priorisieren.

### SATv2-Dashboard (empfohlen)
Wenn Sie das Reporting aktiviert haben, befindet sich ein statisches HTML-Dashboard im Reporting-Ordner.
1. Wählen Sie das Objekt **satv2-dashboard.html** und wählen Sie **Öffnen**.
2. Wählen Sie die konsolidierte CSV, wählen Sie **Aktionen**, **Mit einer vorab signierten URL teilen**.
>Hinweis: Teilen Sie Ihre vorab signierte URL mit niemandem. Eine vorab signierte URL verwendet Sicherheitsanmeldedaten, um zeitlich begrenzte Berechtigungen zum Herunterladen von Objekten zu erteilen. Die URL kann in einen Browser eingegeben oder von einem Programm verwendet werden, um das Objekt herunterzuladen. Die von der vorab signierten URL verwendeten Anmeldedaten sind die des AWS-Benutzers, der die URL generiert hat. Weitere Informationen finden Sie unter „Objekte mit vorab signierten URLs teilen“.
3. Geben Sie für **Anzahl der Minuten** **1** ein.
4. Fügen Sie die URL in die Seite satv2-dashboard.html ein.
5. Sehen Sie sich ein Beispiel für eine Dashboard-Ausgabe in [img/satv2-dashboard.png](https://github.com/awslabs/aws-security-assessment-solution/blob/main/img/satv2-dashboard.png) an.
### Prowler-Dashboard
Prowler verfügt über ein integriertes Dashboard zur Überprüfung der Ergebnisse. Um das Prowler-Dashboard zu verwenden, muss Prowler lokal installiert sein und Sie müssen die Ergebnisse von Prowler lokal herunterladen.
Sie benötigen die AWS Command Line Interface (CLI) und gültige Anmeldedaten. Weitere Informationen finden Sie im [AWS Command Line Interface-Benutzerhandbuch](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html).
1. Installieren Sie Prowler. Weitere Informationen finden Sie in den [Prowler-Installationsanweisungen](https://docs.prowler.com/projects/prowler-open-source/en/latest/#installation).
```
pip install prowler
```
2. Ermitteln Sie den Namen des Amazon S3-Buckets. Der Name des Buckets ist in der CloudFormation-Konsole als Ressource ProwlerFindingsBucket zu finden. Alternativ können Sie zur S3-Konsole navigieren und nach einem Bucket im Format `{stack_name}-prowlerfindingsbucket-{ID}` suchen.
3. Laden Sie die CSVs und Compliance-Daten von S3 herunter. Wenn Sie keinen vollständigen Scan ausgeführt haben, haben Sie möglicherweise keine Compliance-Daten. Ersetzen Sie `{bucket_name}` durch den Namen Ihres Buckets und `{scan_date}` und `{scan_time}` durch den Lauf, den Sie laden möchten, zum Beispiel `2026-09-01` und `204955`. Um die verfügbaren Läufe aufzulisten, verwenden Sie `aws s3 ls s3://{bucket_name}/csv/scan_date={scan_date}/`.
```
aws s3 sync s3://{bucket_name}/compliance/scan_date={scan_date}/scan_time={scan_time}/ output/compliance/
aws s3 sync s3://{bucket_name}/csv/scan_date={scan_date}/scan_time={scan_time}/ output/
```
>Hinweis: Synchronisieren Sie jeweils einen Lauf. Das Prowler-Dashboard liest `output/*.csv` und durchsucht keine Unterordner. Wenn Sie also die `scan_date=`-Ordner selbst nach `output/` kopieren, erhalten Sie ein leeres Dashboard. Das gleichzeitige Laden von zwei Läufen würde jedes Finding zweimal anzeigen.
4. Führen Sie das Dashboard aus. Verwenden Sie den folgenden Befehl, um das Dashboard auszuführen. Standardmäßig startet es unter http://127.0.0.1:11666/.
```
prowler dashboard
```
## Scan-Typen
---
[Read more](https://github.com/awslabs/aws-security-assessment-solution)