Dienst mit einer HTTPS-Anfrage aufrufen

Sie können HTTPS-Anfragen von einem beliebigen dafür geeigneten Ausgangspunkt senden, um einen in Cloud Run gehosteten Dienst zu starten. Alle Cloud Run-Dienste haben eine stabile HTTPS-URL.

Beispiele für Anwendungsfälle sind:

  • Benutzerdefinierte RESTful-Web-API
  • Privater Mikrodienst
  • HTTP-Middleware oder Reverse-Proxy für Ihre Webanwendungen
  • Vorgepackte Webanwendung

Öffentliche Dienste erstellen

Für das Erstellen eines öffentlichen Dienstes in Cloud Run ist Folgendes erforderlich:

  • Zugriff auf den Dienst über das öffentliche Internet
  • Eine URL zur öffentlichen Verwendung

Wenn Sie einen Dienst öffentlich machen möchten, legen Sie bei der Bereitstellung oder nach der Bereitstellung fest, dass Sie nicht authentifizierten (öffentlichen) Zugriff auf den Dienst zulassen möchten.

Sie können die stabile, automatisch zugewiesene URL, die Sie bei der ersten Bereitstellung Ihres Dienstes erhalten haben, als öffentliche URL in Cloud Run (vollständig verwaltet) verwenden. So ermitteln Sie die URL eines bereitgestellten Dienstes:

gcloud run services describe SERVICE --format 'value(status.url)'

Sie können auch eine eigene benutzerdefinierte Domain verwenden, die dem Dienst zugeordnet ist. Für Cloud Run (vollständig verwaltet) werden automatisch verwaltete SSL-Zertifikate bereitgestellt.

Cloud Run (vollständig verwaltet) leitet alle HTTP-Anfragen an HTTPS weiter, beendet jedoch TLS, bevor sie Ihren Webdienst erreichen. Wenn Ihr Dienst Webressourcen generiert, die auf andere Webressourcen mit nicht gesicherten URLs verweisen, etwa http://, können bei Ihrer Seite Warnungen oder Fehler bei gemischten Inhalten auftreten. Verwenden Sie das Protokoll https für alle Referenzweb-URIs oder berücksichtigen Sie Proxyanweisungen in der HTTP-Anfrage wie den HTTP-Header X-Forwarded-Proto.

Private Dienste erstellen

Um einen privaten Dienst in Cloud Run zu erstellen, müssen Sie den Zugriff auf den Dienst beschränken.

Für verwaltete Cloud Run-Dienste können Sie den Zugriff auf Ihren Dienst mit IAM einschränken, wie unter Zugriff mit IAM verwalten beschrieben.

Entwickler können private Dienste am einfachsten testen, indem sie ein Tool wie curl verwenden und ein Autorisierungstoken im Header Authorization übergeben:

curl -H "Authorization: Bearer $(gcloud auth print-identity-token)" SERVICE_URL

Beachten Sie, dass ein Cloud Run-Dienst einen anderen verwalteten Cloud Run-Dienst mit der Dienst-zu-Dienst-Authentifizierung aufrufen kann.

Bei Cloud Run for Anthos in Google Cloud können Sie mit der Einstellung für die interne Verbindung verhindern, dass externe Anfragen an Ihren Dienst weitergeleitet werden.

Zusätzlich zu den oben aufgeführten Möglichkeiten zum Einschränken des Zugriffs können Sie den Zugriff auf einen Dienst auch mithilfe eines Autorisierungs- und Authentifizierungsmechanismus auf Anwendungsebene beschränken, z. B. mit Identity Platform. Eine Anleitung hierzu finden Sie unter Cloud Run on GKE-Endnutzer mit Istio und Identity Platform authentifizieren.

Middleware zur Optimierung Ihres Dienstes verwenden

HTTPS-Proxys können allgemeine Funktionen aus einem HTTP-Dienst wie Caching, Anfragevalidierung oder Autorisierung auslagern. Bei Mikrodiensten sind viele HTTP-Proxys Teil einer API-Gateway-Lösung oder eines Servicenetzwerks wie Istio.

Google Cloud-Produkte, mit denen Sie Ihren Cloud Run-Dienst optimieren können, sind: