Beispiele für identitätsbasierte App Runner-Richtlinien - AWS App Runner

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.

Beispiele für identitätsbasierte App Runner-Richtlinien

Standardmäßig sind IAM Benutzer und Rollen nicht berechtigt, Ressourcen zu erstellen oder zu ändern AWS App Runner . Sie können auch keine Aufgaben mit dem AWS Management Console AWS CLI, oder ausführen AWS API. Ein IAM Administrator muss IAM Richtlinien erstellen, die Benutzern und Rollen die Berechtigung gewähren, bestimmte API Operationen mit den angegebenen Ressourcen auszuführen, die sie benötigen. Der Administrator muss diese Richtlinien anschließend den IAM-Benutzern oder -Gruppen anfügen, die diese Berechtigungen benötigen.

Informationen zum Erstellen einer IAM identitätsbasierten Richtlinie anhand dieser JSON Beispieldokumente finden Sie im IAMBenutzerhandbuch unter Richtlinien auf der JSON Registerkarte erstellen.

Weitere Sicherheitsthemen von App Runner finden Sie unter. Sicherheit in App Runner

Bewährte Methoden für Richtlinien

Identitätsbasierte Richtlinien legen fest, ob jemand App Runner-Ressourcen in Ihrem Konto erstellen, darauf zugreifen oder sie löschen kann. Dies kann zusätzliche Kosten für Ihr verursachen AWS-Konto. Befolgen Sie beim Erstellen oder Bearbeiten identitätsbasierter Richtlinien die folgenden Anleitungen und Empfehlungen:

  • Beginnen Sie mit AWS verwalteten Richtlinien und wechseln Sie zu Berechtigungen mit den geringsten Rechten — Verwenden Sie die AWS verwalteten Richtlinien, die Berechtigungen für viele gängige Anwendungsfälle gewähren, um Ihren Benutzern und Workloads zunächst Berechtigungen zu gewähren. Sie sind in Ihrem verfügbar. AWS-Konto Wir empfehlen Ihnen, die Berechtigungen weiter zu reduzieren, indem Sie vom AWS Kunden verwaltete Richtlinien definieren, die speziell auf Ihre Anwendungsfälle zugeschnitten sind. Weitere Informationen finden Sie AWS im IAMBenutzerhandbuch unter AWS Verwaltete Richtlinien oder Verwaltete Richtlinien für Jobfunktionen.

  • Berechtigungen mit den geringsten Rechten anwenden — Wenn Sie Berechtigungen mit IAM Richtlinien festlegen, gewähren Sie nur die Berechtigungen, die für die Ausführung einer Aufgabe erforderlich sind. Sie tun dies, indem Sie die Aktionen definieren, die für bestimmte Ressourcen unter bestimmten Bedingungen durchgeführt werden können, auch bekannt als die geringsten Berechtigungen. Weitere Informationen zur Verwendung IAM zum Anwenden von Berechtigungen finden Sie IAMim Benutzerhandbuch unter Richtlinien und Berechtigungen. IAM

  • Verwenden Sie Bedingungen in IAM Richtlinien, um den Zugriff weiter einzuschränken — Sie können Ihren Richtlinien eine Bedingung hinzufügen, um den Zugriff auf Aktionen und Ressourcen einzuschränken. Sie können beispielsweise eine Richtlinienbedingung schreiben, um anzugeben, dass alle Anfragen mit gesendet werden müssenSSL. Sie können auch Bedingungen verwenden, um Zugriff auf Serviceaktionen zu gewähren, wenn diese über einen bestimmten Zweck verwendet werden AWS-Service, z. AWS CloudFormation B. Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMJSONRichtlinienelemente: Bedingung.

  • Verwenden Sie IAM Access Analyzer, um Ihre IAM Richtlinien zu validieren, um sichere und funktionale Berechtigungen zu gewährleisten. IAM Access Analyzer validiert neue und bestehende Richtlinien, sodass die Richtlinien der IAM Richtliniensprache (JSON) und den IAM bewährten Methoden entsprechen. IAM Access Analyzer bietet mehr als 100 Richtlinienprüfungen und umsetzbare Empfehlungen, um Sie bei der Erstellung sicherer und funktionaler Richtlinien zu unterstützen. Weitere Informationen finden Sie im IAMBenutzerhandbuch unter Überprüfen von Richtlinien mit IAM Access Analyzer.

  • Multi-Faktor-Authentifizierung erforderlich (MFA) — Wenn Sie ein Szenario haben, in dem IAM Benutzer oder ein Root-Benutzer erforderlich sind AWS-Konto, aktivieren Sie die Option MFA für zusätzliche Sicherheit. Um festzulegen, MFA wann API Operationen aufgerufen werden, fügen Sie MFA Bedingungen zu Ihren Richtlinien hinzu. Weitere Informationen finden Sie unter Sicherer API Zugriff mit MFA im IAMBenutzerhandbuch.

Weitere Informationen zu bewährten Methoden finden Sie unter Bewährte Sicherheitsmethoden IAM im IAM Benutzerhandbuch. IAM

Benutzerrichtlinien

Um auf die App Runner-Konsole zugreifen zu IAM können, müssen Benutzer über Mindestberechtigungen verfügen. Diese Berechtigungen müssen es Ihnen ermöglichen, Details zu den App Runner-Ressourcen in Ihrem aufzulisten und anzuzeigen AWS-Konto. Wenn Sie eine identitätsbasierte Richtlinie erstellen, die restriktiver ist als die erforderlichen Mindestberechtigungen, funktioniert die Konsole für Benutzer mit dieser Richtlinie nicht wie vorgesehen.

App Runner bietet zwei verwaltete Richtlinien, die Sie Ihren Benutzern zuordnen können.

  • AWSAppRunnerReadOnlyAccess— Erteilt Berechtigungen zum Auflisten und Anzeigen von Details zu App Runner-Ressourcen.

  • AWSAppRunnerFullAccess— Erteilt Berechtigungen für alle App Runner-Aktionen.

Um sicherzustellen, dass Benutzer die App Runner-Konsole verwenden können, fügen Sie den Benutzern mindestens die AWSAppRunnerReadOnlyAccess verwaltete Richtlinie bei. Sie können stattdessen die AWSAppRunnerFullAccess verwaltete Richtlinie anhängen oder bestimmte zusätzliche Berechtigungen hinzufügen, damit Benutzer Ressourcen erstellen, ändern und löschen können. Weitere Informationen finden Sie im Benutzerhandbuch unter Hinzufügen von Berechtigungen für einen IAM Benutzer.

Sie müssen Benutzern, die nur Anrufe an AWS CLI oder am tätigen, keine Mindestberechtigungen für die Konsole gewähren AWS API. Erlauben Sie stattdessen nur den Zugriff auf die Aktionen, die dem API Vorgang entsprechen, den Sie Benutzern erlauben möchten.

Die folgenden Beispiele veranschaulichen benutzerdefinierte Benutzerrichtlinien. Sie können sie als Ausgangspunkt für die Definition Ihrer eigenen benutzerdefinierten Benutzerrichtlinien verwenden. Kopieren Sie das Beispiel und/oder entfernen Sie Aktionen, reduzieren Sie Ressourcen und fügen Sie Bedingungen hinzu.

Beispiel: Benutzerrichtlinie für die Konsolen- und Verbindungsverwaltung

Diese Beispielrichtlinie ermöglicht den Konsolenzugriff und ermöglicht die Erstellung und Verwaltung von Verbindungen. Sie erlaubt nicht die Erstellung und Verwaltung von App Runner-Diensten. Es kann einem Benutzer zugewiesen werden, dessen Rolle darin besteht, den Zugriff des App Runner-Dienstes auf Quellcode-Assets zu verwalten.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "apprunner:List*", "apprunner:Describe*", "apprunner:CreateConnection", "apprunner:DeleteConnection" ], "Resource": "*" } ] }

Beispiel: Benutzerrichtlinien, die Bedingungsschlüssel verwenden

Die Beispiele in diesem Abschnitt veranschaulichen bedingte Berechtigungen, die von einigen Ressourceneigenschaften oder Aktionsparametern abhängen.

Diese Beispielrichtlinie ermöglicht die Erstellung eines App Runner-Dienstes, verweigert jedoch die Verwendung einer Verbindung mit dem Namenprod.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateAppRunnerServiceWithNonProdConnections", "Effect": "Allow", "Action": "apprunner:CreateService", "Resource": "*", "Condition": { "ArnNotLike": { "apprunner:ConnectionArn": "arn:aws:apprunner:*:*:connection/prod/*" } } } ] }

Diese Beispielrichtlinie ermöglicht die Aktualisierung eines App Runner-Dienstes, der preprod nur mit einer Auto Scaling-Konfiguration benannt istpreprod.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUpdatePreProdAppRunnerServiceWithPreProdASConfig", "Effect": "Allow", "Action": "apprunner:UpdateService", "Resource": "arn:aws:apprunner:*:*:service/preprod/*", "Condition": { "ArnLike": { "apprunner:AutoScalingConfigurationArn": "arn:aws:apprunner:*:*:autoscalingconfiguration/preprod/*" } } } ] }

Steuern des Zugriffs auf App Runner-Dienste anhand von Tags

Sie können Bedingungen in Ihrer identitätsbasierten Richtlinie verwenden, um den Zugriff auf App Runner-Ressourcen anhand von Tags zu steuern. Dieses Beispiel zeigt, wie Sie eine Richtlinie erstellen könnten, die das Löschen eines App Runner-Dienstes ermöglicht. Die Berechtigung wird jedoch nur gewährt, wenn der Wert des Owner-Tags der Name des Benutzers ist. Diese Richtlinie gewährt auch die Berechtigungen, die für die Ausführung dieser Aktion auf der Konsole erforderlich sind.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListServicesInConsole", "Effect": "Allow", "Action": "apprunner:ListServices", "Resource": "*" }, { "Sid": "DeleteServiceIfOwner", "Effect": "Allow", "Action": "apprunner:DeleteService", "Resource": "arn:aws:apprunner:*:*:service/*", "Condition": { "StringEquals": {"apprunner:ResourceTag/Owner": "${aws:username}"} } } ] }

Sie können diese Richtlinie den IAM-Benutzern in Ihrem Konto zuweisen. Wenn ein benannter Benutzer richard-roe versucht, einen App Runner-Dienst zu löschen, muss der Dienst mit Owner=richard-roe oder gekennzeichnet werdenowner=richard-roe. Andernfalls wird der Zugriff abgelehnt. Der Tag-Schlüssel Owner der Bedingung stimmt sowohl mit Owner als auch mit owner überein, da die Namen von Bedingungsschlüsseln nicht zwischen Groß- und Kleinschreibung unterscheiden. Weitere Informationen finden Sie unter IAMJSONPolicy Elements: Condition im IAMBenutzerhandbuch.