IBM Cloud Docs
Beschränkung des eingehenden Datenverkehrs auf Code Engine Anwendungen und Funktionen mit kontextbasierten Beschränkungen

Beschränkung des eingehenden Datenverkehrs auf Code Engine Anwendungen und Funktionen mit kontextbasierten Beschränkungen

Bei dieser Funktion handelt es sich um eine Betaversion, die nur zu Evaluierungs- und Testzwecken verfügbar ist.

Sie können den eingehenden Datenverkehr zu Ihren IBM Cloud® Code Engine Anwendungen und Funktionen einschränken, indem Sie IBM Cloud kontextbasierte Regeln verwenden, um den Zugriff auf Ihre Code Engine Anwendungen oder Funktionen zu beschränken. Diese Funktion wird für Code Engine Aufträge nicht unterstützt. Anstatt den Zugriff zuzuweisen, prüfen kontextbasierte Beschränkungen, ob eine Zugriffsanfrage aus einem von Ihnen konfigurierten zulässigen Kontext stammt. Sie können den eingehenden Datenverkehr zu Ihren Anwendungen und Funktionen innerhalb Ihrer Code Engine Projekte begrenzen, um Ihre Projekte vor unerwünschtem eingehenden Datenverkehr zu schützen.

Wenn Sie die Ressourcen von Code Engine mit kontextbasierten Einschränkungen mit privaten Endpunkten sichern, können Sie nicht nur den eingehenden Datenverkehr, der eine Verbindung zu Ihrer Anwendung oder Ihren Funktionen herstellt, mit kontextbasierten Regeln einschränken, sondern auch festlegen, wer Ihre Code Engine Ressourcen verwalten darf, z. B. Anwendungen und Geheimnisse bereitstellen oder aktualisieren.

Kontextbasierte Einschränkungen für Code Engine können auf ein einzelnes Projekt, eine ganze Ressourcengruppe oder einen Standort (Region) beschränkt werden. Sie können auch einschränken, auf welche Ihrer Dienste von Code Engine aus zugegriffen werden kann. Weitere Informationen über IBM Cloud kontextbasierte Einschränkungen finden Sie unter Was sind kontextbasierte Einschränkungen?

Wenn eine kontextbasierte Einschränkungsregel eine Ressourcengruppe oder einen Standort abdeckt, gelten die Einschränkungen für bestehende Projekte. Wenn Sie ein neues Projekt am gleichen Ort oder in der gleichen Ressourcengruppe erstellen, müssen Sie die Regel aktualisieren (ohne Änderungen vorzunehmen), um die Einschränkungen auf das neue Projekt anzuwenden. Beachten Sie, dass Sie die Regel nicht ändern müssen; klicken Sie einfach auf Bearbeiten und dann auf Anwenden, um sicherzustellen, dass das neue Projekt mit den Einschränkungen verknüpft wird.

Erstellen einer kontextbezogenen Einschränkung für Ihre Code Engine Ressourcen

Um eine kontextbezogene Einschränkung zu erstellen, siehe Erstellen kontextbezogener Einschränkungen. Die folgenden Schritte beziehen sich auf die Erstellung eines solchen Dokuments für Code Engine.

  1. Rufen Sie die Seite Regeln für kontextbezogene Einschränkungen auf.

  2. Klicken Sie auf Erstellen, um eine neue Regel für die kontextbasierte Einschränkung zu erstellen, beginnend mit dem Dienst.

  3. Wählen Sie Code Engine für Dienste und klicken Sie auf Weiter, um die zu schützenden Dienst-APIs auszuwählen.

  4. Schränken Sie den Zugriff ein, um Ihre Code Engine Anwendungs- oder Funktions-Workloads zu schützen, indem Sie die Option Data plane für Service-APIs auswählen.

    Sie definieren Workload-Einschränkungen auf der Ebene der Datenebene, wählen Sie also zumindest den Datenebenendienst aus. Sie können auch andere Dienst- oder Plattform-APIs auswählen.

    Klicken Sie auf Weiter, um die Beschränkung für Ihre Ressourcen zu erweitern.

  5. Wenden Sie die Einschränkung auf ein einzelnes Projekt, die gesamte Ressourcengruppe oder einen Standort (Region) an, an dem Sie mehrere Projekte haben. Wenden Sie diesen Bereich im Abschnitt Ressourcen an und klicken Sie auf Überprüfen, um fortzufahren.

  6. Klicken Sie auf Weiter, um Ihrer Regel Kontext hinzuzufügen.

  7. Code Engine die API der Datenebene bietet Einschränkungen für private Arbeitslasten, nicht für öffentliche. Standardmäßig bleiben alle öffentlichen Workloads zugänglich. Damit Ihre kontextbasierte Beschränkung private eingehende Verbindungen einschränkt und gleichzeitig alle öffentlichen Endpunkte zugänglich bleiben, müssen Sie einen leeren öffentlichen Kontext erstellen. Ohne diesen leeren öffentlichen Endpunkt treten Fehler bei der Einrichtung der Regeln auf. So erstellen Sie einen leeren öffentlichen Kontext:

    1. Setzen Sie Endpunkte auf ein.
    2. Wählen Sie Öffentlichaus.
    3. Lassen Sie die Netzwerkzonen leer. Stellen Sie sicher, dass in diesem Abschnitt keine Netzwerkzonen aktiviert sind, damit alle öffentlichen Endpunkte zugänglich sind.

    Sie können private Endpunkte bei Bedarf einschränken:

    • Um jeglichen Zugriff auf private Endpunkte in Ihrem Projekt zu verweigern, stellen Sie sicher, dass nur der leere öffentliche Kontext existiert und keine privaten Kontexte gesetzt sind.
    • Um private Workloads innerhalb Ihres Projekts einzuschränken, wählen Sie die Liste der Netzwerkzonen aus, die Sie zulassen möchten (z. B. können Sie einer VPC den Zugriff auf private Netzwerke in Ihrem Projekt Code Engine erlauben).
    • IPv6 einschränkungen werden für Code Engine nicht unterstützt.
  8. Klicken Sie auf Weiter, um Details zur Regel anzugeben.

  9. Geben Sie einen Namen oder eine Beschreibung für Ihre Regel an.

  10. Wählen Sie Aktiviert für Durchsetzung.

  11. Überprüfen Sie die Zusammenfassung und klicken Sie auf Erstellen.

Testen Ihrer kontextbasierten Beschränkungsregel für private eingehende Verbindungen

Nachdem Sie die kontextbezogene Einschränkungsregel erstellt haben, können Sie sie mit Ihrer privaten Anwendung oder Funktion testen. Der Zugriff wird nur für IP-Adressen gewährt, die auf der Zulassungsliste stehen. Wenn eine Anfrage von einer IP-Adresse kommt, die nicht auf der Zulassungsliste steht, wird eine Fehlermeldung RBAC Access Denied angezeigt. Wenn Sie zum Beispiel nur 9.9.9.9/32 zulassen, ist Ihre Anwendung oder Funktion nur von diesem IP-Bereich aus zugänglich. Alles, was außerhalb dieses Bereichs liegt, führt zu einer Fehlermeldung.

Wenn Sie eine Netzwerkzone ausgewählt haben, die auf eine VPC (Virtual Private Cloud) verweist, müssen Sie auch ein VPE-Gateway (Virtual Private Endpoint) erstellen, damit die VPC auf private Workloads zugreifen kann. Nach der Erstellung des Gateways kann es zu einer vorübergehenden Verzögerung aufgrund der PDNS-Auflösung kommen. Anfangs können Sie unter RBAC Access Denied Fehlermeldungen sehen, aber nach einiger Zeit wird Ihnen der Zugang gewährt.