Beispiele für identitätsbasierte Amazon-Pinpoint-Richtlinien - Amazon Pinpoint

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 Amazon-Pinpoint-Richtlinien

Benutzer und Rollen besitzen standardmäßig keine Berechtigungen zum Erstellen oder Ändern von Amazon-Pinpoint-Ressourcen. Sie können auch keine Aufgaben mit dem AWS Management Console AWS CLI, oder einem ausführen AWS API. Ein IAM Administrator muss IAM Richtlinien erstellen, die Benutzern und Rollen die Berechtigung gewähren, bestimmte API Operationen mit den benötigten Ressourcen auszuführen. Der Administrator muss diese Richtlinien anschließend den -Benutzern oder -Gruppen anfügen, die diese Berechtigungen benötigen.

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

Bewährte Methoden für Richtlinien

Identitätsbasierte Richtlinien können festlegen, ob jemand Amazon-Pinpoint-Ressourcen in Ihrem Konto erstellen, darauf zugreifen oder daraus 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:

  • Erste Schritte mit AWS verwalteten Richtlinien und Umstellung auf Berechtigungen mit den geringsten Rechten — Verwenden Sie für den Einstieg die Gewährung von Berechtigungen für Ihre Benutzer und Workloads die AWS verwalteten Richtlinien, die Berechtigungen für viele gängige Anwendungsfälle 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. IAMAccess 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 unter IAMAccess Analyzer-Richtlinienvalidierung im IAMBenutzerhandbuch.

  • 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. Wenn Sie festlegen möchten, MFA wann API Operationen aufgerufen werden, fügen Sie MFA Bedingungen zu Ihren Richtlinien hinzu. Weitere Informationen finden Sie unter Konfiguration des MFA -geschützten API Zugriffs im IAMBenutzerhandbuch.

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

Verwenden der Amazon-Pinpoint-Konsole

Um auf die Amazon-Pinpoint-Konsole zugreifen zu können, müssen Sie über einen Mindestsatz von Berechtigungen verfügen. Diese Berechtigungen müssen es Ihnen ermöglichen, Details zu den Amazon Pinpoint Pinpoint-Ressourcen in Ihrem AWS Konto aufzulisten und einzusehen. Wenn Sie eine identitätsbasierte Richtlinie erstellen, die Berechtigungen anwendet, die strenger als die mindestens erforderlichen Berechtigungen sind, funktioniert die Konsole für Entitäten mit dieser Richtlinie (Benutzer oder Rollen) nicht wie vorgesehen. Um sicherzustellen, dass diese Entitäten die Amazon-Pinpoint-Konsole verwenden können, fügen Sie den Entitäten eine Richtlinie an. Weitere Informationen finden Sie unter Hinzufügen von Berechtigungen für einen Benutzer im IAMBenutzerhandbuch.

Die folgende Beispielrichtlinie bietet Lesezugriff auf die Amazon Pinpoint Pinpoint-Konsole in einer bestimmten Region. AWS Es beinhaltet den schreibgeschützten Zugriff auf andere Dienste, von denen die Amazon Pinpoint Pinpoint-Konsole abhängt, wie Amazon Simple Email Service (AmazonSES) und Amazon IAM Kinesis.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "UseConsole", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:region:accountId:*" }, { "Effect": "Allow", "Action": [ "firehose:ListDeliveryStreams", "iam:ListRoles", "kinesis:ListStreams", "s3:List*", "ses:Describe*", "ses:Get*", "ses:List*", "sns:ListTopics" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }

Ersetzen Sie im vorherigen Richtlinienbeispiel region durch den Namen einer AWS Region und ersetzen accountId mit Ihrer AWS Konto-ID.

Sie müssen Benutzern, die nur am AWS CLI oder am anrufen, 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 ausführen möchten.

Beispiel: Zugriff auf ein einzelnes Amazon-Pinpoint-Projekt

Sie können auch Richtlinien für den schreibgeschützten Zugriff erstellen, die Zugriff nur auf bestimmte Projekte gewähren. Mit der folgenden Beispielrichtlinie können sich Benutzer bei der Konsole anmelden und eine Projektliste anzeigen. Außerdem können Benutzer Informationen zu verwandten Ressourcen für andere AWS Dienste anzeigen, von denen die Amazon Pinpoint Pinpoint-Konsole abhängig ist, wie Amazon SESIAM, und Amazon Kinesis. Allerdings können Benutzer nur zusätzliche Informationen zu dem Projekt anzeigen, die in der Richtlinie angegeben sind. Sie können diese Richtlinie ändern, um den Zugriff auf weitere Projekte oder AWS Regionen zu ermöglichen.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewProject", "Effect": "Allow", "Action": "mobiletargeting:GetApps", "Resource": "arn:aws:mobiletargeting:region:accountId:*" }, { "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": [ "arn:aws:mobiletargeting:region:accountId:apps/projectId", "arn:aws:mobiletargeting:region:accountId:apps/projectId/*", "arn:aws:mobiletargeting:region:accountId:reports" ] }, { "Effect": "Allow", "Action": [ "ses:Get*", "kinesis:ListStreams", "firehose:ListDeliveryStreams", "iam:ListRoles", "ses:List*", "sns:ListTopics", "ses:Describe*", "s3:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }

Ersetzen Sie im vorherigen Beispiel region durch den Namen einer AWS Region ersetzen accountId durch Ihre AWS Konto-ID und ersetzen projectId mit der ID des Amazon Pinpoint Pinpoint-Projekts, für das Sie Zugriff gewähren möchten.

Ebenso können Sie Richtlinien erstellen, die einem Benutzer in Ihrem AWS Konto eingeschränkten Schreibzugriff auf eines Ihrer Amazon Pinpoint Pinpoint-Projekte gewähren, z. B. auf das Projekt, das die 810c7aab86d42fb2b56c8c966example Projekt-ID hat. In diesem Fall wollen Sie dem Benutzer erlauben, Projektkomponenten wie Segmente und Kampagnen anzuzeigen, hinzuzufügen und zu aktualisieren, aber keine Komponenten zu löschen.

Erstellen Sie nicht nur Berechtigungen für mobiletargeting:Get-und mobiletargeting:List-Aktionen, sondern auch eine Richtlinie, die Berechtigungen für die folgenden Aktionen erteilt: mobiletargeting:Create, mobiletargeting:Update und mobiletargeting:Put. Dies sind die zusätzlichen Berechtigungen, die zum Erstellen und Verwalten der meisten Projektkomponenten erforderlich sind. Beispielsweise:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "LimitedWriteProject", "Effect": "Allow", "Action": "mobiletargeting:GetApps", "Resource": "arn:aws:mobiletargeting:region:accountId:*" }, { "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*", "mobiletargeting:Create*", "mobiletargeting:Update*", "mobiletargeting:Put*" ], "Resource": [ "arn:aws:mobiletargeting:region:accountId:apps/810c7aab86d42fb2b56c8c966example", "arn:aws:mobiletargeting:region:accountId:apps/810c7aab86d42fb2b56c8c966example/*", "arn:aws:mobiletargeting:region:accountId:reports" ] }, { "Effect": "Allow", "Action": [ "ses:Get*", "kinesis:ListStreams", "firehose:ListDeliveryStreams", "iam:ListRoles", "ses:List*", "sns:ListTopics", "ses:Describe*", "s3:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }

Beispiel: Anzeigen von Amazon-Pinpoint-Ressourcen basierend auf Tags

Sie können in Ihrer identitätsbasierten Richtlinie Bedingungen für die Steuerung des Zugriffs auf Amazon-Pinpoint-Ressourcen auf der Basis von Tags verwenden. Diese Beispielrichtlinie zeigt, wie Sie diese Art von Richtlinie erstellen können, um die Anzeige von Amazon-Pinpoint-Ressourcen zu ermöglichen. Die Berechtigung wird jedoch nur gewährt, wenn der Wert des Ressourcen-Tags Owner 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": "ListResources", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "*" }, { "Sid": "ViewResourceIfOwner", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:*:*:*", "Condition": { "StringEquals": { "aws:ResourceTag/Owner": "userName" }, "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:mobiletargeting:region:accountId:*" } } } ] }

Sie können diese Richtlinie den -Benutzern in Ihrem Konto anfügen. Wenn ein Benutzer mit dem Namen richard-roe versucht, eine Amazon-Pinpoint-Ressource anzuzeigen, muss die Ressource mit dem Tag Owner=richard-roe oder owner=richard-roe versehen sein. 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 IAMJSONRichtlinienelemente: Bedingung im IAMBenutzerhandbuch.

Beispiel: Benutzern die Berechtigung zur Anzeige eigener Berechtigungen erteilen

Dieses Beispiel zeigt, wie Sie eine Richtlinie erstellen könnten, die es IAM Benutzern ermöglicht, die internen und verwalteten Richtlinien einzusehen, die mit ihrer Benutzeridentität verknüpft sind. Diese Richtlinie umfasst Berechtigungen zum Ausführen dieser Aktion auf der Konsole oder programmgesteuert mithilfe von oder. AWS CLI AWS API

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Beispiele: Bereitstellung des Zugriffs auf Amazon Pinpoint Pinpoint-Aktionen API

Dieser Abschnitt enthält Beispielrichtlinien, die den Zugriff auf Funktionen ermöglichen, die über Amazon Pinpoint verfügbar sind. Amazon Pinpoint API ist die primäre Plattform API für Amazon Pinpoint. Weitere Informationen dazu API finden Sie in der Amazon Pinpoint API Pinpoint-Referenz.

Schreibgeschützter Zugriff

Die folgende Beispielrichtlinie ermöglicht den schreibgeschützten Zugriff auf alle Ressourcen in Ihrem Amazon Pinpoint Pinpoint-Konto in einer bestimmten Region. AWS

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewAllResources", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:region:accountId:*" } ] }

Ersetzen Sie im vorherigen Beispiel region durch den Namen einer AWS Region und ersetzen accountId mit Ihrer AWS Konto-ID.

Administratorzugriff

Die folgende Beispielrichtlinie ermöglicht vollen Zugriff auf alle Amazon-Pinpoint-Aktionen und Ressourcen in Ihrem Amazon-Pinpoint-Konto:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccess", "Effect": "Allow", "Action": [ "mobiletargeting:*" ], "Resource": "arn:aws:mobiletargeting:region:accountId:*" } ] }

Ersetzen Sie im vorherigen Beispiel accountId mit Ihrer AWS Konto-ID.

Beispiele: Bereitstellung des Zugriffs auf Amazon Pinpoint SMS und Sprachaktionen API

Dieser Abschnitt enthält Beispielrichtlinien, die den Zugriff auf Funktionen ermöglichen, die über Amazon Pinpoint SMS und Voice API verfügbar sind. Dies ist eine ErgänzungAPI, die erweiterte Optionen für die Nutzung und Verwaltung der SMS Sprachkanäle in Amazon Pinpoint bietet. Weitere Informationen dazu API finden Sie in der Amazon Pinpoint SMS - und API Sprachreferenz.

Schreibgeschützter Zugriff

Die folgende Beispielrichtlinie ermöglicht den schreibgeschützten Zugriff auf alle Amazon Pinpoint SMS - und API Voice-Aktionen und -Ressourcen in Ihrem Konto: AWS

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoiceReadOnly", "Effect": "Allow", "Action": [ "sms-voice:Get*", "sms-voice:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:region:accountId:*" } } } ] }

Administratorzugriff

Die folgende Beispielrichtlinie ermöglicht vollen Zugriff auf alle Amazon Pinpoint SMS - und API Voice-Aktionen und -Ressourcen in Ihrem AWS Konto:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoiceFullAccess", "Effect": "Allow", "Action": [ "sms-voice:*", ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:region:accountId:*" } } } ] }

Beispiel: Beschränken des Amazon-Pinpoint-Projektzugriffs auf bestimmte IP-Adressen

Die folgende Beispielrichtlinie gewährt jedem Benutzer die Erlaubnis, jede Amazon Pinpoint Pinpoint-Aktion für ein bestimmtes Projekt durchzuführen (projectId). Die Anfrage muss jedoch aus dem Bereich der IP-Adressen stammen, die in der Bedingung angegeben sind.

Die Bedingung in dieser Anweisung gibt den 54.240.143.* Bereich der zulässigen Internetprotokolladressen der Version 4 (IPv4) an, mit einer Ausnahme:54.240.143.188. Der Condition Block verwendet die NotIpAddress Bedingungen IpAddress und und den aws:SourceIp Bedingungsschlüssel, bei dem es sich um einen AWS-weiten Bedingungsschlüssel handelt. Weitere Informationen zu diesen Bedingungsschlüsseln finden Sie unter Spezifizieren von Bedingungen im IAMBenutzerhandbuch für Richtlinien. Die aws:SourceIp IPv4 Werte verwenden die CIDR Standardschreibweise. Weitere Informationen finden Sie unter Operatoren für IP-Adressbedingungen im IAMBenutzerhandbuch.

{ "Version":"2012-10-17", "Id":"AMZPinpointPolicyId1", "Statement":[ { "Sid":"IPAllow", "Effect":"Allow", "Principal":"*", "Action":"mobiletargeting:*", "Resource":[ "arn:aws:mobiletargeting:region:accountId:apps/projectId", "arn:aws:mobiletargeting:region:accountId:apps/projectId/*" ], "Condition":{ "IpAddress":{ "aws:SourceIp":"54.240.143.0/24" }, "NotIpAddress":{ "aws:SourceIp":"54.240.143.188/32" } } } ] }

Beispiel: Beschränken des Amazon-Pinpoint-Zugriffs auf der Grundlage von Tags

Die folgende Beispielrichtlinie gewährt Berechtigungen zur Ausführung beliebiger Amazon Pinpoint Pinpoint-Aktionen für ein bestimmtes Projekt (projectId). Berechtigungen werden jedoch nur erteilt, wenn die Anfrage von einem Benutzer stammt, dessen Name ein Wert im Owner Ressourcen-Tag für das Projekt ist, wie in der Bedingung angegeben.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ModifyResourceIfOwner", "Effect": "Allow", "Action": "mobiletargeting:*", "Resource": [ "arn:aws:mobiletargeting:region:accountId:apps/projectId", "arn:aws:mobiletargeting:region:accountId:apps/projectId/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/Owner": "userName" } } } ] }

Beispiel: Amazon Pinpoint erlauben, E-Mails mit Identitäten zu senden, die in Amazon verifiziert wurden SES

Wenn Sie eine E-Mail-Identität (z. B. eine E-Mail-Adresse oder Domain) über die Amazon Pinpoint-Konsole verifizieren, wird diese Identität automatisch so konfiguriert, dass sie sowohl von Amazon Pinpoint als auch von Amazon verwendet werden kann. SES Wenn Sie jedoch eine E-Mail-Identität über Amazon SES verifizieren und diese Identität mit Amazon Pinpoint verwenden möchten, müssen Sie eine Richtlinie auf diese Identität anwenden.

Die folgende Beispielrichtlinie erteilt Amazon Pinpoint die Erlaubnis, E-Mails mit einer E-Mail-Identität zu senden, die über Amazon SES verifiziert wurde.

{ "Version":"2008-10-17", "Statement":[ { "Sid":"PinpointEmail", "Effect":"Allow", "Principal":{ "Service":"pinpoint.amazonaws.com" }, "Action":"ses:*", "Resource":"arn:aws:ses:region:accountId:identity/emailId", "Condition":{ "StringEquals":{ "aws:SourceAccount":"accountId" }, "StringLike":{ "aws:SourceArn":"arn:aws:mobiletargeting:region:accountId:apps/*" } } } ] }

Wenn Sie Amazon Pinpoint in der Region AWS GovCloud (USA West) verwenden, verwenden Sie stattdessen das folgende Richtlinienbeispiel:

{ "Version":"2008-10-17", "Statement":[ { "Sid":"PinpointEmail", "Effect":"Allow", "Principal":{ "Service":"pinpoint.amazonaws.com" }, "Action":"ses:*", "Resource":"arn:aws-us-gov:ses:us-gov-west-1:accountId:identity/emailId", "Condition":{ "StringEquals":{ "aws:SourceAccount":"accountId" }, "StringLike":{ "aws:SourceArn":"arn:aws-us-gov:mobiletargeting:us-gov-west-1:accountId:apps/*" } } } ] }