Zum Inhalt springen

Verwandeln Sie Ihre Kontakte in Urlaubsgeld mit unserem neuen Kundenempfehlungsprogramm! Erfahren Sie mehr

Diese Dokumentation gilt für Version 4 und höher von App Builder, dem neuen Namen für Vinyl. Hier gelangen Sie zur Vinyl-Dokumentation.

Hochverfügbare Bereitstellung vor Ort für Jitterbit App Builder

Einführung

Das folgende Diagramm veranschaulicht die wichtigsten Komponenten einer Hochverfügbarkeitsbereitstellung von App Builder:

attachment

App Builder erfordert Synchronisierung des Verschlüsselung, Redis als Nachrichtenbus und einfache Datensynchronisation und Anwendungsserverkonfiguration.

Verschlüsselung

App Builder verwendet Verschlüsselung aus zwei Gründen:

  1. Schutz von Sicherheitstoken wie Sitzungscookies.

  2. Verschlüsselung auf Anwendungsebene.

Beide verwenden dieselbe zugrunde liegende Verschlüsselung. Insbesondere verwenden sie ASP.Net Data Protection API. Obwohl App Builder versucht, die Datenschutzbibliothek automatisch zu konfigurieren, sind möglicherweise zusätzliche Konfigurationen erforderlich.

Speicherung von Verschlüsselung

Datenverschlüsselungsschlüssel (DEKs) sind symmetrische Verschlüsselung zum Schutz von Daten. Da DEKs zum verschlüsseln von in der Datenbank gespeicherten Daten verwendet werden, können die DEKs selbst nicht in der Datenbank gespeichert werden. App Builder unterstützt mehrere konfigurierbare DEK-Speicherrichtlinien. Administratoren müssen die passende Speicherrichtlinie für ihre Umfeld auswählen. App Builder unterstützt die folgenden Speicherrichtlinien:

Dateisystem

  • S3

Die Speicherrichtlinie wird über AppSettings konfiguriert. Siehe Benutzerdefinierte .NET-Konfiguration für weitere Informationen zu AppSettings.

Dateisystemspeicher

Standardmäßig speichert App Builder DEKs im Dateisystem im Klartext, unterhalb des Stammverzeichnisses der App Builder Webanwendung.

Einstellung Beispiel Hinweise
DataEncryption.KeyStorage FileSystem Gibt an, dass App Builder DEKs im Dateisystem speichern soll. Dies ist der Standardwert.
DataEncryption.Directory C:\inetpub\wwwroot\App Builder\App_Data\Keys Gibt das Verzeichnis an, in dem die DEKs gespeichert werden. Standardmäßig ist dies das Verzeichnis „App_Data\Keysd“ unterhalb des App Builder-Installationsverzeichnisses. Der Anwendungspoolbenutzer benötigt die volle Zugriffsberechtigung für dieses Verzeichnis.
DateEncryption.CertificateThumbprint C123B3E899807189F11F0EC4AC320760F00ECE34 Optional. X.509-Fingerabdruck des Schlüsselverschlüsselungsschlüssels (KEK). Das KEK-Zertifikat sollte im persönlichen Zertifikatspeicher des lokalen Computers registriert sein. Der Fingerabdruck kann in den Zertifikateigenschaften gefunden werden.
Example AppSettings JSON Configuration
{
    "DataEncryption": {
        "KeyStorage": "FileSystem",
        "Directory": "C:\Path\To\Keys",
        "CertificateThumbprint": "C123B3E899807189F11F0EC4AC320760F00ECE34"
    }
}

Amazon S3 -Speicher

Da der lokale Speicher der EC2-Instanz nicht für die Langzeitspeicherung verwendet werden kann, müssen DEKs an anderer Stelle gespeichert werden. App Builder unterstützt die Speicherung von DEKs in S3-Buckets. Die folgenden Einstellungen konfigurieren den S3-DEK-Speicher.

Einstellung Beispiel Hinweise
DataEncryption.KeyStorage S3 Gibt an, dass App Builder DEKs auf Amazon S3 speichern soll.
DataEncryption.S3BucketEndpoint https://s3.amazonaws.com/vinyl-data-encryption-keys oder https://vinyl-data-encryption-keys.s3.amazonaws.com/ Identifiziert die AWS-Region und den S3-Bucket, in dem die S3-Schlüssel gespeichert werden. Die URL muss eine der folgenden Formen haben: https://s3{-aws-region}.amazonaws.com/{bucket} oder https://{bucket}.s3{-aws-region}.amazonaws.com. Weitere Informationen finden Sie im folgenden Dokument: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html
DataEncryption.S3KeyPrefix dev Optional. Ermöglicht mehreren Umgebungen, DEKs im selben Bucket zu speichern und die Schlüssel nach Präfix zu isolieren.
Example AppSettings JSON Configuration
{
    "DataEncryption": {
        "KeyStorage": "S3",
        "S3BucketEndpoint": "https://bucket.s3.us-east-2.amazonaws.com",
        "S3KeyPrefix": "dev"
    }
}

Redis-Einrichtung

Verwenden Sie Redis, um die Kommunikation zwischen App Builder Servern zu erleichtern. Ein kleiner Server ohne Replikate oder Shards ist ausreichend.

App Builder wurde getestet und funktioniert sowohl mit Redis Version 3.2 als auch mit Redis 6.X

Anwendungsserverkonfiguration

Sie müssen die folgenden Änderungen an einem Standard App Builder-Setup vornehmen - diese Einstellungen sollten auf jede Instanz von App Builder angewendet werden. Alle Einstellungen sollten für App Builder Instanzen, die dieselbe Umfeld bedienen (DEV, QA oder PROD), identisch sein.

Folgendes sollte eingerichtet werden in C:\inetpub\wwwroot\App Builder\AppSettings.json (Verwendung von S3 zur Speicherung von Verschlüsselung)

{
    "SharedState": {
        "Provider": "Redis",
        "RedisConnectionString": "REDISSERVER:6379,password=abc123"
    },
    "DataEncryption": {
        "KeyStorage": "S3",
        "S3BucketEndpoint": "https://BUCKET.s3.us-east-2.amazonaws.com",
        "S3KeyPrefix": "ENV"
    }
}

Folgendes sollte eingestellt werden in C:\inetpub\wwwroot\App Builder\AppSettings.json (Verwendung von NFS zur Speicherung von Verschlüsselung)

{
    "SharedState": {
        "Provider": "Redis",
        "RedisConnectionString": "REDISSERVER:6379,password=abc123"
    },
    "DataEncryption": {
        "KeyStorage": "FileSystem",
        "Directory": "C:\Path\To\Keys"
    }
}

Jede Instanz von App Builder sollte über dieselbe Datei connection.xml verfügen.

Nachdem Sie Änderungen vorgenommen und App Builder neu gestartet haben, überprüfen Sie die Protokolle, um sicherzustellen, dass die Einstellungen richtig übernommen werden.