
Erstellt AWS-IAM-Richtlinien mit minimalen Berechtigungen basierend auf Ressourcen-ARNs und Zugriffsebenen und automatisiert so die sichere Richtlinienerstellung für die Cloud-Infrastruktur.
IAM Least Privilege Policy Generator.

Für ausführliche Anleitungen und vollständige Dokumentation besuchen Sie bitte das Projekt auf ReadTheDocs.
Lesen Sie den Salesforce Engineering Blog Post über Policy Sentry.
Das manuelle Erstellen sicherheitsbewusster IAM-Richtlinien kann sehr mühsam und ineffizient sein. Viele Infrastructure-as-Code-Entwickler haben so etwas schon erlebt:
Ein solcher Prozess ist weder für die Sicherheit noch für Infrastructure-as-Code-Entwickler ideal. Wir müssen das sichere Schreiben von IAM-Richtlinien erleichtern und die Komplexität der Erstellung von Least-Privilege-IAM-Richtlinien abstrahieren. Deshalb habe ich dieses Tool entwickelt.
Policy Sentry ermöglicht es Benutzern, in Sekundenschnelle Least-Privilege-IAM-Richtlinien zu erstellen, anstatt IAM-Richtlinien mühsam von Hand zu schreiben. Diese Richtlinien werden je nach Zugriffsebenen und Ressourcen eingeschränkt. Im Falle eines Sicherheitsvorfalls trägt dies dazu bei, den Explosionsradius kompromittierter Anmeldeinformationen zu begrenzen, indem IAM-Prinzipalen nur der Zugriff auf das gewährt wird, was sie benötigen.
Vor diesem Tool konnte es Stunden dauern, eine IAM-Richtlinie mit Ressourcen-ARN-Einschränkungen zu erstellen – aber jetzt kann es Sekunden dauern. Auf diese Weise müssen Entwickler nur die Ressourcen bestimmen, auf die sie zugreifen müssen, und Policy Sentry abstrahiert die Komplexität von IAM-Richtlinien von ihren Entwicklungsprozessen.
Das Flaggschiff-Feature von Policy Sentry ist die Möglichkeit, IAM-Richtlinien basierend auf Ressourcen-ARNs und Zugriffsebenen zu erstellen. Unsere CRUD-Funktionalität verfolgt den meinungsstarken Ansatz, dass IAC-Entwickler die Komplexität von AWS IAM nicht verstehen müssen – wir sollten die Komplexität für sie abstrahieren. Tatsächlich sollten Entwickler nur in der Lage sein, zu sagen...
arn:aws:s3:::example-org-sbx-vmimport"arn:aws:secretsmanager:us-east-1:123456789012:secret:mysecret"arn:aws:ssm:us-east-1:123456789012:parameter/test"...und unsere Automatisierung sollte Richtlinien erstellen, die diesen Zugriffsebenen entsprechen.
Wie erreichen wir das? Nun, Policy Sentry nutzt die AWS-Dokumentation zu [Aktionen, Ressourcen und Bedingungsschlüsseln][1], um die Aktionen, Zugriffsebenen und Ressourcentypen nachzuschlagen und Richtlinien basierend auf den ARNs und Zugriffsebenen zu generieren. Betrachten Sie die folgende Tabellenübersicht:
| Aktionen | Zugriffsebene | Ressourcentypen |
|---|---|---|
| ssm:GetParameter | Lesen | parameter |
| ssm:DescribeParameters | Auflisten | parameter |
| ssm:PutParameter | Schreiben | parameter |
| secretsmanager:PutResourcePolicy | Berechtigungsverwaltung | secret |
| secretsmanager:TagResource | Tagging | secret |
Policy Sentry fasst die gesamte Dokumentation in einer einzigen Datenbank zusammen und verwendet diese Datenbank, um Richtlinien entsprechend Aktionen, Ressourcen und Zugriffsebenen zu generieren.
brew tap salesforce/policy_sentry https://github.com/salesforce/policy_sentry
brew install policy_sentry
pip3 install --user policy_sentry
Um die Bash-Vervollständigung zu aktivieren, fügen Sie dies in Ihre .bashrc ein:
eval "$(_POLICY_SENTRY_COMPLETE=bash_source policy_sentry)"
Um die ZSH-Vervollständigung zu aktivieren, fügen Sie dies in Ihre .zshrc ein:
eval "$(_POLICY_SENTRY_COMPLETE=zsh_source policy_sentry)"