Skip to content

Amazon S3

Amazon S3 ist ein hoch skalierbares Speichersystem, das von Amazon Web Services angeboten wird.

Die Integration von Braze und Amazon S3 bietet zwei Integrationsstrategien:

  • Nutzen Sie Currents, um Ihre Daten dort zu speichern, bis Sie sie mit anderen Plattformen, Tools und Standorten verbinden möchten.
  • Verwenden Sie Dashboard-Datenexporte (wie CSV-Exporte und Engagement-Berichte).

Voraussetzungen

Erstellen eines neuen S3-Buckets

Um einen Bucket für Ihre App zu erstellen, gehen Sie wie folgt vor:

  1. Öffnen Sie die Amazon S3-Konsole und folgen Sie den Anweisungen, um sich unter Sign in anzumelden oder unter Create an Account with AWS ein Konto zu erstellen.
  2. Nachdem Sie sich angemeldet haben, wählen Sie S3 aus der Kategorie Storage & Content Delivery.
  3. Wählen Sie auf dem nächsten Bildschirm Create Bucket aus.
  4. Sie werden aufgefordert, Ihren Bucket zu erstellen und eine AWS-Region auszuwählen.

Braze erlaubt es nicht, eine Region im Dashboard auszuwählen oder zu konfigurieren. Die AWS-Region wird beim Erstellen des Buckets in der AWS-Konsole festgelegt. Die Integration sendet Daten an den von Ihnen angegebenen Bucket-Namen, und AWS leitet Anfragen automatisch an die Region des Buckets weiter. Wenn Ihr Konnektor versucht, eine Verbindung zu einer anderen Region als der gewünschten herzustellen (z. B. eu-west-1 statt eu-central-1), erstellen oder verwenden Sie einen S3-Bucket in Ihrer gewünschten Region in AWS. Auf der Braze-Seite muss nichts geändert werden.

Integration

Braze hat zwei verschiedene Integrationsstrategien mit Amazon S3 – eine für Braze-Currents und eine für alle Dashboard-Datenexporte (wie CSV-Exporte oder Engagement-Berichte). Beide Integrationen unterstützen zwei verschiedene Authentifizierungs- oder Autorisierungsmethoden:

AWS-Geheimschlüssel-Authentifizierungsmethode

Diese Authentifizierungsmethode generiert einen geheimen Schlüssel und eine Zugriffsschlüssel-ID, die es Braze ermöglicht, sich als Nutzer:in in Ihrem AWS-Konto zu authentifizieren, um Daten in Ihren Bucket zu schreiben.

1. Schritt: Nutzer:in erstellen

Um Ihre Zugriffsschlüssel-ID und Ihren geheimen Zugriffsschlüssel abzurufen, erstellen Sie eine IAM-Nutzer:in und eine Administratorengruppe in AWS.

2. Schritt: Zugangsdaten abrufen

Nachdem Sie eine neue Nutzer:in erstellt haben, wählen Sie Show User Security Credentials, um Ihre Zugriffsschlüssel-ID und Ihren geheimen Zugriffsschlüssel anzuzeigen. Notieren Sie sich diese Zugangsdaten, oder wählen Sie den Button Download Credentials, da Sie diese später in das Braze-Dashboard eingeben müssen.

3. Schritt: Richtlinie erstellen

Navigieren Sie zu Policies > Get Started > Create Policy, um Berechtigungen für Ihre Nutzer:in hinzuzufügen. Wählen Sie anschließend Create Your Own Policy aus. Damit erhalten Sie eingeschränkte Berechtigungen, sodass Braze nur auf die angegebenen Buckets zugreifen kann.

Geben Sie einen Richtliniennamen Ihrer Wahl an und fügen Sie den folgenden Code-Snippet in den Abschnitt Policy Document ein. Ersetzen Sie INSERTBUCKETNAME durch Ihren Bucket-Namen. Ohne diese Berechtigungen schlägt die Integration bei der Prüfung der Zugangsdaten fehl und kann nicht erstellt werden.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": ["s3:ListBucket", "s3:GetBucketLocation"],
            "Resource": ["arn:aws:s3:::INSERTBUCKETNAME"]
        },
        {
            "Effect": "Allow",
            "Action": ["s3:PutObject", "s3:GetObject"],
            "Resource": ["arn:aws:s3:::INSERTBUCKETNAME/*"]
        }
    ]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": ["s3:ListBucket", "s3:GetBucketLocation"],
            "Resource": ["arn:aws:s3:::INSERTBUCKETNAME"]
        },
        {
            "Effect": "Allow",
            "Action": ["s3:GetObject", "s3:PutObject", "s3:DeleteObject"],
            "Resource": ["arn:aws:s3:::INSERTBUCKETNAME*", "arn:aws:s3:::INSERTBUCKETNAME/", "arn:aws:s3:::INSERTBUCKETNAME"]
        }
    ]
}

4. Schritt: Richtlinie anhängen

Nachdem Sie eine neue Richtlinie erstellt haben, gehen Sie zu Users und wählen Sie Ihre spezifische Nutzer:in aus. Wählen Sie im Tab Permissions die Option Attach Policy und wählen Sie die neue Richtlinie aus, die Sie erstellt haben. Jetzt können Sie Ihre AWS-Zugangsdaten mit Ihrem Braze-Konto verknüpfen.

5. Schritt: Braze mit AWS verknüpfen

Gehen Sie in Braze zu Partnerintegrationen > Currents.

Wählen Sie dann Create New Current und anschließend Amazon S3 Data Export.

Benennen Sie Ihren Current. Vergewissern Sie sich im Abschnitt Credentials, dass AWS Secret Access Key ausgewählt ist, und geben Sie dann Ihre S3-Zugangs-ID, den geheimen AWS-Zugriffsschlüssel und den AWS S3-Bucket-Namen in die entsprechenden Felder ein.

Sie können auch die folgenden Anpassungen nach Ihren Bedürfnissen vornehmen:

  • Ordnerpfad: Standardmäßig ist currents eingestellt. Wenn dieser Ordner nicht vorhanden ist, erstellt Braze automatisch einen für Sie.
  • Serverseitige AES-256-Verschlüsselung im Ruhezustand: Standardmäßig ist diese Option ausgeschaltet und enthält den Header x-amz-server-side-encryption.

Wählen Sie Launch Current, um fortzufahren.

Eine Benachrichtigung informiert Sie darüber, ob Ihre Zugangsdaten erfolgreich validiert wurden. AWS S3 ist jetzt für Braze-Currents eingerichtet.

Gehen Sie in Braze zu Partnerintegrationen > Technology Partners und wählen Sie Amazon S3.

Vergewissern Sie sich auf der Seite AWS Credentials, dass AWS Secret Access Key ausgewählt ist, und geben Sie dann Ihre AWS-Zugangs-ID, den geheimen AWS-Zugriffsschlüssel und den AWS S3-Bucket-Namen in die entsprechenden Felder ein. Wählen Sie bei der Eingabe Ihres geheimen Schlüssels zunächst Test Credentials, um sicherzustellen, dass Ihre Zugangsdaten funktionieren, und wählen Sie dann Save, wenn der Test erfolgreich war.

Eine Benachrichtigung informiert Sie darüber, ob Ihre Zugangsdaten erfolgreich validiert wurden. AWS S3 ist jetzt in Ihr Braze-Konto integriert.

AWS-Rollen-ARN-Authentifizierungsmethode

Diese Authentifizierungsmethode generiert einen Rollen-Amazon-Ressourcennamen (ARN), der es dem Braze-Amazon-Konto ermöglicht, sich als Mitglied der von Ihnen erstellten Rolle zu authentifizieren, um Daten in Ihren Bucket zu schreiben.

1. Schritt: Richtlinie erstellen

Melden Sie sich zunächst bei der AWS-Verwaltungskonsole als Kontoadministrator an. Navigieren Sie zum IAM-Bereich der AWS-Konsole, wählen Sie in der Navigationsleiste Policies und wählen Sie Create Policy.

Öffnen Sie den Tab JSON und geben Sie den folgenden Code-Snippet in den Abschnitt Policy Document ein. Ersetzen Sie INSERTBUCKETNAME durch Ihren Bucket-Namen. Wählen Sie Review Policy, wenn Sie fertig sind.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": ["s3:ListBucket", "s3:GetBucketLocation"],
            "Resource": ["arn:aws:s3:::INSERTBUCKETNAME"]
        },
        {
            "Effect": "Allow",
            "Action": ["s3:PutObject", "s3:GetObject"],
            "Resource": ["arn:aws:s3:::INSERTBUCKETNAME/*"]
        }
    ]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": ["s3:ListBucket", "s3:GetBucketLocation"],
            "Resource": ["arn:aws:s3:::INSERTBUCKETNAME"]
        },
        {
            "Effect": "Allow",
            "Action": ["s3:PutObject", "s3:GetObject","s3:DeleteObject"],
            "Resource": ["arn:aws:s3:::INSERTBUCKETNAME/*"]
        }
    ]
}

Geben Sie der Richtlinie dann einen Namen und eine Beschreibung und wählen Sie Create Policy.

2. Schritt: Rolle erstellen

Wählen Sie im selben IAM-Bereich der Konsole Roles > Create Role.

Rufen Sie Ihre Braze-Konto-ID und Ihre externe ID von Ihrem Braze-Konto ab:

  • Currents: Gehen Sie in Braze zu Partnerintegrationen > Currents. Wählen Sie dann Create New Current und anschließend Amazon S3 Data Export. Hier finden Sie die Bezeichner, die Sie zur Erstellung Ihrer Rolle benötigen.
  • Dashboard-Datenexport: Gehen Sie in Braze zu Partnerintegrationen > Technology Partners und wählen Sie Amazon S3. Hier finden Sie die Bezeichner, die Sie zur Erstellung Ihrer Rolle benötigen. (Erstellen Sie hier Ihre Rollen, wenn Sie nur die Nachrichtenarchivierung einrichten möchten.)

Wählen Sie in der AWS-Konsole Another AWS Account als Typ für die vertrauenswürdige Entität aus. Geben Sie Ihre Braze-Konto-ID ein, aktivieren Sie das Kontrollkästchen Require external ID und geben Sie die externe Braze-ID ein. Wählen Sie Next, wenn Sie fertig sind.

Die S3-Seite „Create Role“. Diese Seite enthält Felder für den Rollennamen, die Rollenbeschreibung, vertrauenswürdige Entitäten, Richtlinien und die Berechtigungsgrenze.

3. Schritt: Richtlinie anhängen

Hängen Sie als Nächstes die zuvor erstellte Richtlinie an die Rolle an. Suchen Sie in der Suchleiste nach der Richtlinie und setzen Sie ein Häkchen daneben, um sie anzuhängen. Wählen Sie Next, wenn Sie fertig sind.

Rollen-ARN

Geben Sie der Rolle einen Namen und eine Beschreibung und wählen Sie Create Role.

Rollen-ARN

Sie sehen nun Ihre neu erstellte Rolle in der Liste.

4. Schritt: Verknüpfung mit Braze AWS

Suchen Sie in der AWS-Konsole Ihre neu erstellte Rolle in der Liste. Wählen Sie den Namen aus, um die Details dieser Rolle zu öffnen.

Notieren Sie sich den Role ARN oben auf der Rollenübersichtsseite.

Kehren Sie zu Ihrem Braze-Konto zurück und kopieren Sie den Rollen-ARN in das dafür vorgesehene Feld.

Gehen Sie in Braze zu Partnerintegrationen > Currents. Wählen Sie dann Create New Current und wählen Sie Amazon S3 Data Export.

Geben Sie Ihrem Current einen Namen. Vergewissern Sie sich dann im Abschnitt Credentials, dass AWS Role ARN ausgewählt ist, und geben Sie Ihren Rollen-ARN und den AWS S3-Bucket-Namen in die dafür vorgesehenen Felder ein.

Sie können auch die folgenden Anpassungen nach Ihren Bedürfnissen vornehmen:

  • Ordnerpfad (Standard: currents)
  • Serverseitige AES-256-Verschlüsselung im Ruhezustand (Standard: AUS) – Enthält den Header x-amz-server-side-encryption

Wählen Sie Launch Current, um fortzufahren. Eine Benachrichtigung zeigt an, ob Ihre Zugangsdaten erfolgreich validiert wurden. AWS S3 ist jetzt für Braze-Currents eingerichtet.

Gehen Sie in Braze zur Seite Technology Partners unter Integrations und wählen Sie Amazon S3.

Vergewissern Sie sich auf der Seite AWS Credentials, dass der Radiobutton AWS Role ARN ausgewählt ist, und geben Sie dann Ihren Rollen-ARN und den AWS S3-Bucket-Namen in die entsprechenden Felder ein. Wählen Sie zunächst Test Credentials, um zu überprüfen, ob Ihre Zugangsdaten ordnungsgemäß funktionieren, und wählen Sie dann Save, wenn der Test erfolgreich war.

Eine Benachrichtigung informiert Sie darüber, ob Ihre Zugangsdaten erfolgreich validiert wurden. AWS S3 ist jetzt in Ihr Braze-Konto integriert.

Aktualisierung der Amazon S3-Zugangsdaten für Currents

Sie können die Amazon S3-Zugangsdaten eines bestehenden Braze-Currents-Konnektors aktualisieren, ohne die Integration zu stoppen oder bereits in Ihren Bucket exportierte Daten zu verlieren.

Um Zugangsdaten zu aktualisieren – oder zwischen AWS Secret Access Key und AWS Role ARN zu wechseln – führen Sie zunächst die IAM- und AWS-seitigen Schritte für Ihre gewählte Methode weiter oben in diesem Artikel durch (Richtlinien, Nutzer:in oder Rolle und Bezeichner nach Bedarf).

Wenn Sie die Zugangsdaten in AWS vorbereitet haben, gehen Sie in Braze zu Partnerintegrationen > Currents, suchen Sie Ihren Amazon S3-Konnektor in der Liste, wählen Sie Edit, aktualisieren Sie die Credentials und wählen Sie Update Current. Braze validiert die eingegebenen Zugangsdaten; Ihr Konnektor läuft weiter und die bereits in Ihrem Bucket vorhandenen Daten bleiben verfügbar. Weitere Informationen finden Sie unter Currents aktualisieren in Currents einrichten.

Exportverhalten

Nutzer:innen, die eine Cloud-Datenspeicherlösung integriert haben und APIs, Dashboard-Berichte oder CSV-Berichte exportieren, erleben Folgendes:

  • Alle API-Exporte geben keine Download-URL im Antwortkörper zurück und müssen über den Datenspeicher abgerufen werden.
  • Alle Dashboard-Berichte und CSV-Berichte werden zum Herunterladen an die E-Mail der Nutzer:in gesendet (keine Speicherberechtigungen erforderlich) und im Datenspeicher gesichert.

Fehler: Unable to connect to S3, please validate that your credentials are correct

Wenn dieser Fehler beim Herunterladen eines CSV-Exports angezeigt wird, öffnen Sie die Amazon S3-Integration auf der Seite Technology Partners und wählen Sie Test Credentials. Das Ergebnis erklärt, was bei der Validierung fehlgeschlagen ist – beispielsweise könnte dem Schlüssel die Berechtigung GetObject fehlen, was Braze daran hindert, Download-Links zu generieren.

Aktualisieren Sie Ihre IAM-Richtlinie, damit die Integrations-Nutzer:in oder -Rolle s3:GetObject auf dem in Ihrer Braze-Integration konfigurierten S3-Bucket und Objektpfad aufrufen kann. Weitere Informationen zu Exportproblemen finden Sie unter Fehlerbehebung beim Export.

Mehrere Konnektoren

Wenn Sie mehr als einen Currents-Konnektor erstellen möchten, der an Ihren S3-Bucket sendet, können Sie dieselben Zugangsdaten verwenden, müssen aber für jeden einen anderen Ordnerpfad angeben. Sie können diese im selben Workspace erstellen oder sie aufteilen und in mehreren Workspaces erstellen. Sie haben auch die Möglichkeit, eine einzelne Richtlinie für jede Integration zu erstellen oder eine Richtlinie zu erstellen, die beide Integrationen abdeckt.

Wenn Sie denselben S3-Bucket sowohl für Currents als auch für Datenexporte verwenden möchten, müssen Sie zwei separate Richtlinien erstellen, da jede Integration unterschiedliche Berechtigungen erfordert.

Fehlerbehebung

Fehler: Konto hat keinen PutObject-Zugriff

Wenn beim Speichern von Amazon S3-Zugangsdaten für Dashboard-Datenexporte der folgende Fehler angezeigt wird, kann dies an falschen Berechtigungen oder Einstellungen für die serverseitige Verschlüsselung liegen.

1
S3 Credentials are invalid because this account does not have 'PutObject access'. Please check the permissions and ensure that this key has access to 'PutObject' in the 'CUSTOMER-BUCKET-HERE' bucket.

Um dieses Problem zu beheben, überprüfen Sie die folgenden Bereiche.

Falsche Bucket-Richtlinie

Vergewissern Sie sich, dass Sie eine Richtlinie mit den korrekten Berechtigungen erstellt haben, wie im Abschnitt Amazon S3-Integration beschrieben (verwenden Sie die Richtlinie Dashboard Data Export für Ihre Authentifizierungsmethode).

Serverseitige Verschlüsselung

1
User: arn:aws:sts::XXX:assumed-role/braze-iam-role/braze is not authorized to perform: kms:GenerateDataKey on resource: arn:aws:XXX because no identity-based policy allows the kms:GenerateDataKey action

Wenn Sie diese Fehlermeldung vom Braze-Support oder in Ihren AWS-Logs erhalten, ist Ihr S3-Bucket mit AWS Key Management Service (SSE-KMS)-Verschlüsselung konfiguriert. Braze unterstützt SSE-KMS weder für Currents noch für Dashboard-Datenexporte. Um dieses Problem zu beheben, deaktivieren Sie SSE-KMS in Ihrem S3-Bucket.

Zusätzliche Berechtigungen prüfen

Stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen verfügen, einschließlich s3:GetBucketLocation und s3:PutObject.

New Stuff!