Verschlüsselung auf Meldungsebene mit OCI Vault in Oracle Integration implementieren

Message-Level Encryption (MLE) ist eine Sicherheitstechnik, die verwendet wird, um die Vertraulichkeit und Integrität einer Nachricht während der Übertragung zu schützen. Es beinhaltet die Verwendung von Verschlüsselungsalgorithmen, um den Inhalt einer Nachricht zu scramble, so dass nur der beabsichtigte Empfänger mit den Entschlüsselungsschlüsseln die Nachricht lesen kann.

Die Rest-API ist durch die Architektur zustandslos, d.h. der Server verwaltet keine Session und hat keine Informationen zum Client. In der Anforderung muss der Client alle Informationen senden, damit der Server antworten kann. Bei der Arbeit mit Rest API und Sicherheit liegt der Fokus auf Authentifizierung, Autorisierung und Vertraulichkeit.

Zur Authentifizierung und Autorisierung gibt es Protokolle und Best Practices, die von API-Schlüsseln, Basisauthentifizierung, JWT-Token bis oAuth variieren. Aus Gründen der Vertraulichkeit können Sie Transport Level Security (TLS) aktivieren, den Prozess zur Sicherung der Kommunikation über ein Netzwerk durch Verschlüsselung von Datenverkehr. Aus diesem Grund setzen die meisten Rest-APIs HTTPS anstelle von einfachem HTTP durch. Alle diese haben ihre eigenen Vor- und Nachteile und werden von Oracle Integration sofort unterstützt.

Während die Sicherheit auf Netzwerkebene die meiste Zeit die Anforderungen erfüllt, gibt es Zeiten, in denen eine Verschlüsselung auf Nachrichten- oder Payload-Ebene erforderlich ist (z. B. wenn sie sensible Informationen enthält, wie z. B.: persönliche Identifikationsinformationen [PII], Kreditkartennummern, Bankkontodaten, Krankenakten oder dergleichen). Aus diesem Grund setzen viele Zahlungsgateways (Visa, MasterCard, Regierungsbehörden) MLE für Rest-APIs mit sensiblen Daten durch.

Oracle Integration bietet Out-of-the-box-Features zur Erfüllung der Authentifizierung, Autorisierung und TLS. MLE kann mit OCI Vault erreicht werden.

Architektur

Diese Referenzarchitektur zeigt, wie Sie mit OCI Vault MLE in Oracle Integration erreichen.

OCI Vault ist ein Verschlüsselungsverwaltungsservice, mit dem Verschlüsselungsschlüssel und Secrets für den sicheren Zugriff auf Ressourcen gespeichert und verwaltet werden. Sie stellt APIs bereit, mit denen Sie Schlüssel verwalten sowie Daten mit diesen Schlüsseln signieren, verschlüsseln und entschlüsseln können.

Bei der Arbeit mit Kryptografie gibt es zwei grundlegende Arten von Systemen zum Sichern von Daten.

  • Symmetrische Kryptographie verwendet denselben (privaten) Schlüssel für Verschlüsselung und Entschlüsselung. Sender und Empfänger müssen über denselben Geheimschlüssel verfügen, mit dem sie die Daten verschlüsseln und entschlüsseln. Das heißt, wenn jemand den Schlüssel abfängt, kann er die Daten entschlüsseln.
  • Bei der asymmetrischen Kryptografie werden hingegen zwei verschiedene Schlüssel verwendet: ein Public Key und ein Private Key. Der Absender verwendet den öffentlichen Schlüssel des Empfängers, um die Daten zu verschlüsseln, und der Empfänger verwendet seinen privaten Schlüssel, um sie zu entschlüsseln. Der private Schlüssel wird geheim gehalten und nie geteilt, was ihn viel sicherer macht als symmetrische Kryptographie.

Symmetrische Kryptografie hat den Vorteil der Geschwindigkeit, ist aber weniger sicher, da sie den gleichen Schlüssel sowohl für die Verschlüsselung als auch für die Entschlüsselung verwendet. Asymmetrische Kryptografie ist zwar langsamer, aber sicherer, da der für die Entschlüsselung verwendete Private Key niemals gemeinsam verwendet wird und nur vom Empfänger aufgerufen werden kann.

OCI Vault unterstützt diese Schlüsselausprägungsalgorithmen.

Schlüsselformalgorithmus Beschreibung
Advanced Encryption Standard (AES) AES-Schlüssel sind symmetrische Schlüssel, mit denen Sie Daten verschlüsseln können.
Rivest-Shamir-Adleman (RSA) RSA-Schlüssel sind asymmetrische Schlüssel, die auch als Schlüsselpaare bezeichnet werden und aus einem Public Key und einem Private Key bestehen, mit dem Sie Daten während der Übertragung verschlüsseln, Daten signieren und die Integrität signierter Daten überprüfen können.
Digital-Signatur-Algorithmus (ECDSA) ECDSA-Schlüssel sind asymmetrische Schlüssel, mit denen Sie Daten signieren und die Integrität signierter Daten prüfen können.

Manchmal müssen Sie sowohl symmetrisch als auch asymmetrisch verwenden. Beispiel: Ein Kunde teilt seinen öffentlichen RSA-Schlüssel mit Ihnen, Sie generieren und verwenden einen privaten AES-Schlüssel zur Verschlüsselung der Daten und verschlüsseln den privaten Schlüssel mit dem öffentlichen RSA-Schlüssel des Kunden, den Sie in der Payload senden. Da der Kunde seinen privaten RSA-Schlüssel nicht freigegeben hat, können nur sie die Daten entschlüsseln, indem er zuerst den AES-Schlüssel entschlüsselt und dann die Payload entschlüsselt. Dies geschieht, wenn die Payload-Größe größer ist, als ein RSA-Schlüssel verschlüsseln kann.

Mit OCI Vault können Sie Ihre eigenen Masterverschlüsselungsschlüssel importieren oder erstellen. Wenn Sie importiertes Schlüsselmaterial verwenden, bleiben Sie für das Schlüsselmaterial verantwortlich, während OCI Vault eine Kopie davon verwenden kann. Weitere Informationen zum Importieren von Schlüsseln finden Sie unter Weitere Informationen.

OCI Vault stellt eine Reihe von APIs bereit, die von Oracle Integration verwendet werden können. Weitere Informationen zur Vault-Schlüsselverwaltungs-API finden Sie unter Weitere Informationen. Im Folgenden finden Sie einige der APIs, die häufig in Verschlüsselungsszenarios auf Nachrichtenebene verwendet werden.

API Beschreibung
Verschlüsseln Verschlüsselt Daten mit Verschlüsselungsdetails, die als Teil der Anforderung bereitgestellt werden.
Entschlüsseln Entschlüsselt Daten mit Entschlüsselungsdetails, die als Teil der Anforderung bereitgestellt werden.
Vorzeichen Erstellt eine digitale Signatur für einen Nachrichten- oder Nachrichtendigest, indem der Private Key eines Public-Private-Key-Paares verwendet wird, das auch als asymmetrischer Schlüssel bezeichnet wird.
Verifizieren Prüft eine digitale Signatur, die vom Signaturvorgang generiert wurde, indem der Public Key desselben asymmetrischen Schlüssels verwendet wird, mit dem die Daten signiert wurden. Wenn Sie die digitale Signatur außerhalb des Service validieren möchten, können Sie dazu den Public Key des asymmetrischen Schlüssels verwenden.

Wenn Sie in Oracle Integration arbeiten und die Payload verschlüsseln müssen, bevor Sie die Anforderung an eine Rest-API senden, können Sie OCI Vault verwenden. Wenn Sie mit symmetrischer Kryptografie arbeiten, können Sie den AES-Private Key empfangen, in OCI Vault hochladen und mit OCI Vault-APIs die Daten verschlüsseln und diese verschlüsselten Daten an die Rest-API senden. Wenn Sie asymmetrische Kryptografie benötigen, können Sie den RSA-Public Key empfangen, in OCI Vault hochladen und die OCI Vault-APIs verwenden, um die Daten zu verschlüsseln und diese verschlüsselten Daten an die Rest-API zu senden. Wenn Sie Rest-APIs in Oracle Integration für verschlüsselte Payload durchsetzen möchten, können Sie Schlüssel erstellen, mit Ihren Clients teilen und die Daten mit OCI Vault-APIs entschlüsseln und prüfen. Sie können beide Schlüssel auch kombinieren, wenn Sie sowohl asymmetrische als auch symmetrische Kryptografie verwenden müssen.

Das folgende Diagramm veranschaulicht diese Referenzarchitektur.



oci-vault-architecture-oracle.zip

Die Architektur umfasst die folgenden Komponenten:

  • Oracle Integration

    Oracle Integration bietet ein umfassendes Set an Tools und Services, mit denen Unternehmen ihre verschiedenen Anwendungen, Services und Datenquellen sowohl On Premise als auch in der Cloud integrieren können. Oracle Integration bietet eine Reihe von Funktionen, darunter vordefinierte Connectors für die Integration mit verschiedenen gängigen Anwendungen wie Oracle Fusion, Salesforce, SAP, Workday und vielen mehr sowie benutzerdefinierte Connectors für die Integration mit anderen Anwendungen und Services. Außerdem bietet es eine intuitive visuelle Benutzeroberfläche für das Entwerfen, Testen und Bereitstellen von Integrationen, sodass Benutzer komplexe Integrationsworkflows erstellen können, ohne dass Programmierkenntnisse erforderlich sind.

  • Oracle Cloud Infrastructure Vault

    OCI Vault ist ein sicherer und skalierbarer Schlüsselverwaltungsservice, der von Oracle Cloud Infrastructure (OCI) angeboten wird. Es bietet einen zentralen Ort für die Verwaltung von kryptografischen Schlüsseln und Secrets, die zum Sichern von OCI-Ressourcen und -Anwendungen verwendet werden. OCI Vault bietet eine Reihe von Features, darunter Schlüsselgenerierung und -speicherung, sichere Verteilung von Schlüsseln, Verschlüsselung und Entschlüsselung. Es ermöglicht Benutzern, ihre eigenen Schlüssel zu verwalten oder OCI-verwaltete Schlüssel zu verwenden. Benutzer können ihre Schlüssel auch regelmäßig rotieren, um maximale Sicherheit zu gewährleisten.

    OCI Vault bietet außerdem zahlreiche Rest-APIs zur Verwaltung von Vaults und Schlüsseln.

Hinweise

Beachten Sie bei der Implementierung dieser Referenzarchitektur die folgenden Punkte:

  • Sicherheit

    Mit Oracle Cloud Infrastructure Identity and Access Management-(IAM-)Policys können Sie kontrollieren, wer auf Ihre Cloud-Ressourcen zugreifen kann und welche Vorgänge ausgeführt werden können. Weisen Sie Ressourcenarten die geringsten Zugriffsberechtigungen für IAM-Benutzer und -Gruppen zu.

  • Servicelimits

    Berücksichtigen Sie die Limits und Quoten für die OCI-Services, die in der Topologie verwendet werden. Mehr erfahren.

Danksagungen

Autor:

  • Harris Qureshi

Beitragende:

  • John Sulyok