Sichere, einsatzbereite Oracle Autonomous Database- und Oracle APEX-Anwendung bereitstellen

Mit Oracle APEX können Sie skalierbare, sichere Unternehmensanwendungen mit erstklassigen Features erstellen, die Sie überall bereitstellen können. Oracle APEX ist eine Low-Code-Entwicklungsplattform. Wenn die Anwendung hochgefahren und gestartet ist, können Sie das Deployment mit Terraform in einer Oracle Cloud Infrastructure-Umgebung automatisieren.

Architektur

Diese Architektur nutzt den Load Balancer, um eine Oracle Autonomous Transaction Processing-Datenbank in einem separaten privaten Subnetz zu isolieren. Die von Terraform automatisierte Oracle Cloud Infrastructure-(OCI-)Landingzone stellt eine sichere Infrastruktur zur Ausführung der Oracle APEX-Anwendung auf Basis der gemeinsamen Oracle Autonomous Database bereit, die vom privaten Endpunkt bereitgestellt wird.

Das folgende Diagramm veranschaulicht diese Referenzarchitektur.

Beschreibung von apex-app-adb.png folgt
Beschreibung der Abbildung apex-app-adb.png

apex-app-adb-oracle.zip

Die Architektur umfasst die folgenden Komponenten:

  • Mandant

    Ein Mandant ist eine sichere und isolierte Partition, die Oracle in Oracle Cloud einrichtet, wenn Sie sich für Oracle Cloud Infrastructure registrieren. Sie können Ihre Ressourcen in Oracle Cloud in Ihrem Mandanten erstellen, organisieren und verwalten. Ein Mandant entspricht einem Unternehmen oder einer Organisation. Normalerweise hat ein Unternehmen einen einzelnen Mandanten und spiegelt seine Organisationsstruktur innerhalb dieses Mandanten wider. Ein einzelner Mandant ist in der Regel mit einem einzelnen Abonnement verknüpft, und ein einzelnes Abonnement hat in der Regel nur einen Mandanten.

  • Region

    Eine Oracle Cloud Infrastructure-Region ist ein lokalisierter geografischer Bereich, der ein oder mehrere Data Center, so genannte Availability-Domains, enthält. Regionen sind nicht von anderen Regionen abhängig, und große Distanzen können sie trennen (über Länder oder sogar Kontinente).

  • Compartment

    Compartments sind regionsübergreifende logische Partitionen in einem Oracle Cloud Infrastructure-Mandanten. Organisieren Sie Ihre Ressourcen in Oracle Cloud mit Compartments, kontrollieren Sie den Zugriff auf die Ressourcen, und legen Sie Nutzungsquoten fest. Um den Zugriff auf die Ressourcen in einem bestimmten Compartment zu kontrollieren, definieren Sie Policys, mit denen angegeben wird, wer auf die Ressourcen zugreifen kann und welche Aktionen sie ausführen können.

  • Availability-Domains

    Availability-Domains sind eigenständige, unabhängige Data Center innerhalb einer Region. Die physischen Ressourcen in jeder Availability-Domain sind von den Ressourcen in den anderen Availability-Domains isoliert, was Fehlertoleranz bietet. Availability-Domains haben keine gemeinsame Infrastruktur wie Stromversorgung oder Kühlung oder das interne Availability-Domainnetzwerk. Es ist also unwahrscheinlich, dass der Fehler in einer Availability-Domain die anderen Availability-Domains in der Region beeinflusst.

  • Virtuelles Cloud-Netzwerk (VCN) und Subnetze

    Ein VCN ist ein anpassbares, Softwaredefiniertes Netzwerk, das Sie in einer Oracle Cloud Infrastructure-Region einrichten. Wie bei traditionellen Data Center-Netzwerken haben VCNs die vollständige Kontrolle über Ihre Netzwerkumgebung. Ein VCN kann mehrere sich nicht überschneidende CIDR-Blöcke aufweisen, die Sie nach dem Erstellen des VCN ändern können. Sie können ein VCN in Subnetze segmentieren, die für eine Region oder eine Availability-Domain gelten können. Jedes Subnetz besteht aus einem nachfolgenden Adressbereich, der sich nicht mit den anderen Subnetzen im VCN überschneidet. Sie können die Größe eines Subnetzes nach der Erstellung ändern. Ein Subnetz kann öffentlich oder privat sein.

  • Load Balancer

    Der Oracle Cloud Infrastructure Load Balancing-Service ermöglicht automatisierte Trafficverteilung von einem einzelnen Einstiegspunkt auf mehrere Server im Backend.

  • Netzwerksicherheitsgruppe (NSG)

    NSGs fungieren als virtuelle Firewalls für Ihre Cloud-Ressourcen. Mit dem Sicherheitsmodell ohne Vertrauen in Oracle Cloud Infrastructure wird der gesamte Traffic abgelehnt, und Sie können den Netzwerkverkehr innerhalb eines VCN kontrollieren. Eine NSG besteht aus einer Gruppe von Ingress- und Egress-Sicherheitsregeln, die nur für eine angegebene Gruppe von VNICs in einem einzelnen VCN gelten.

  • Network Address Translation-(NAT-)Gateway

    Ein NAT-Gateway ermöglicht privaten Ressourcen in einem VCN den Zugriff auf Hosts im Internet, ohne dass diese Ressourcen für eingehende Internetverbindungen freigegeben werden.

  • Servicegateway

    Das Servicegateway ermöglicht den Zugriff von einem VCN auf andere Services, wie Oracle Cloud Infrastructure Object Storage. Der Traffic vom VCN zum Oracle-Service durchläuft die Oracle-Netzwerk-Fabric und nie das Internet.

  • Internetgateway

    Das Internetgateway ermöglicht Traffic zwischen den öffentlichen Subnetzen in einem VCN und dem öffentlichen Internet.

  • Autonome Datenbank

    Autonome Oracle Cloud Infrastructure-Datenbanken sind vollständig verwaltete, vorkonfigurierte Datenbankumgebungen, die Sie zur Transaktionsverarbeitung und Data Warehousing-Workloads verwenden können. Sie müssen keine Hardware konfigurieren oder verwalten und keine Software installieren. Oracle Cloud Infrastructure verarbeitet das Erstellen der Datenbank sowie das Backup, Patching, Upgrade und Tuning der Datenbank.

  • Autonomous Transaction Processing

    Oracle Autonomous Transaction Processing ist ein selbststeuernder, selbstsichernder und selbstreparierender Datenbankservice, der für Transaktionsverarbeitungs-Workloads optimiert ist.

  • Bastionservice

    Oracle Cloud Infrastructure-Bastion bietet eingeschränkten und zeitlich begrenzten sicheren Zugriff auf Ressourcen, die keine öffentlichen Endpunkte haben und strenge Zugriffskontrollen für Ressourcen erfordern, wie Bare-Metal- und virtuelle Maschinen, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Container Engine for Kubernetes (OKE) und alle anderen Ressourcen, die Secure Shell Protocol-(SSH-)Zugriff ermöglichen. Mit dem Oracle Cloud Infrastructure-Bastion-Service können Sie den Zugriff auf private Hosts aktivieren, ohne einen Jump-Host bereitzustellen und zu verwalten. Außerdem erhalten Sie ein verbessertes Sicherheitsniveau mit identitätsbasierten Berechtigungen sowie einer zentralen, auditierten und zeitgebundenen SSH-Session. Durch Oracle Cloud Infrastructure-Bastion ist keine öffentliche IP für Bastionzugriff mehr erforderlich. Dadurch entfallen der Aufwand und die potenzielle Angriffsfläche beim Remotezugriff.

Empfehlungen

Verwenden Sie die folgenden Empfehlungen als Ausgangspunkt. Ihre Anforderungen können sich von der hier beschriebenen Architektur unterscheiden.
  • VCN

    Ein VCN wird von der Terraform-Lösung bereitgestellt. Diese Lösung ist jedoch modular aufgebaut, und Sie können ein vorhandenes VCN verwenden.

    Wenn Sie ein VCN erstellen, bestimmen Sie die Anzahl der erforderlichen CIDR-Blöcke und die Größe jedes Blocks basierend auf der Anzahl der Ressourcen, die Sie an Subnetze im VCN anhängen möchten. Verwenden Sie CIDR-Blöcke, die sich im privaten Standardadressbereich befinden.

    Wählen Sie CIDR-Blöcke aus, die sich nicht mit einem anderen Netzwerk (in Oracle Cloud Infrastructure, Ihrem On-Premise-Data Center oder einem anderen Cloud-Provider) überschneiden, für das Sie private Verbindungen einrichten möchten.

    Nachdem Sie ein VCN erstellt haben, können Sie die zugehörigen CIDR-Blöcke ändern, hinzufügen und entfernen.

    Berücksichtigen Sie bei der Entwicklung der Subnetze Ihren Trafficfluss und Ihre Sicherheitsanforderungen. Hängen Sie alle Ressourcen innerhalb einer bestimmten Tier oder Rolle an dasselbe Subnetz an, das als Sicherheitsgrenze dienen kann.

  • Netzwerksicherheitsgruppen (NSGs

    Mit NSGs können Sie ein Set von Ingress- und Egress-Regeln definieren, die für bestimmte VNICs gelten. Es wird empfohlen, keine Sicherheitslisten sondern NSGs zu verwenden, da NSGs die Subnetzarchitektur des VCN von den Sicherheitsanforderungen Ihrer Anwendung trennen können.

  • Cloud Guard

    Klonen und passen Sie die von Oracle bereitgestellten Standardrezepte an, um benutzerdefinierte Detektor- und Responder-Rezepte zu erstellen. Mit diesen Rezepten können Sie angeben, welche Art von Sicherheitsverletzungen eine Warnung generieren und welche Aktionen für sie ausgeführt werden dürfen. Beispiel: Sie möchten Object Storage-Buckets ermitteln, deren Sichtbarkeit auf "Öffentlich" gesetzt ist.

    Wenden Sie Cloud Guard auf Mandantenebene an, um den weitesten Geltungsbereich abzudecken und den administrativen Aufwand bei der Verwaltung mehrerer Konfigurationen zu reduzieren.

    Sie können auch das Feature "Verwaltete Liste" verwenden, um bestimmte Konfigurationen auf Detektoren anzuwenden.

  • Load-Balancer-Bandbreite

    Beim Erstellen des Load Balancers können Sie entweder eine vordefinierte Ausprägungen mit fester Bandbreite auswählen oder eine benutzerdefinierte (flexible) Ausprägungen angeben, bei der Sie einen Bandbreitenbereich festlegen und der Service die Bandbreite automatisch basierend auf Trafficmustern skalieren lässt. Bei beiden Lösungen können Sie die Ausprägungen nach dem Erstellen des Load Balancers jederzeit ändern.

Hinweise

Beachten Sie beim Deployment dieser Referenzarchitektur die folgenden Punkte:

  • Performance

    Terraform-Lösung wird in Minutenschnelle bereitgestellt, und die Oracle APEX-Anwendung wird in einer neuen autonomen Datenbank ausgeführt.

  • Sicherheit

    Die Compute-Instanz und die autonome Datenbank müssen sich in einem privaten Subnetz befinden und mit Netzwerksicherheitsgruppen geschützt werden.

  • Verfügbarkeit

    Um die High Availability Ihrer Compute-Instanzen zu planen, sollten Sie folgende wichtige Designstrategien in Betracht ziehen:

    • Beseitigen Sie Single Points of Failure, indem Sie die drei Faultdomains der Availability-Domain ordnungsgemäß nutzen oder Instanzen über mehrere Availability-Domains hinweg bereitstellen.
    • Gleitende IP-Adressen verwenden.
    • Stellen Sie sicher, dass Ihr Design sowohl die Datenverfügbarkeit als auch die Integrität Ihrer Compute-Instanzen schützt.

Bereitstellen

Der Terraform-Code für ein Oracle Autonomous Transaction Processing-(ATP-)Deployment ist in GitHub verfügbar.

  1. Gehen Sie zu GitHub.
  2. Klonen oder laden Sie das Repository auf Ihren lokalen Rechner herunter.
  3. Befolgen Sie die Anweisungen im README-Dokument der Cloud Foundation Library.

Mehr erfahren

Weitere Informationen zu Oracle Cloud Infrastructure.

Prüfen Sie die folgenden zusätzlichen Ressourcen:

Bestätigungen

Author: Corina Todea