Auf dieser Seite erhalten Sie einen allgemeinen Überblick über den BeyondCorp Enterprise-Client-Connector. Außerdem erfahren Sie, wie Sie ihn aktivieren, um Ihre Client-Server-Anwendungen zu sichern.
Übersicht
BeyondCorp Enterprise ist die Zero-Trust-Lösung von Google Cloud, die einen sicheren Zugriff auf private Anwendungen mit integriertem Schutz vor Bedrohungen und Datenschutz bietet. BeyondCorp Enterprise bietet den sicheren Zugriff für alle webbasierten (HTTPS-)Anwendungen über Chrome.
Der BeyondCorp Enterprise-Client-Connector erweitert die Unterstützung für Nicht-Webanwendungen, indem eine sichere Verbindung zu Anwendungen hergestellt wird, die sowohl in Google Cloud- als auch in Nicht-Google Cloud-Umgebungen ausgeführt werden und vollen Kontext und identitätssensitiven Zugriff haben.
Funktionsweise
Das folgende Diagramm bietet eine allgemeine Architekturübersicht über den Client-Connector.
Die Clientkomponenten bestehen aus folgenden Komponenten:
Endpunktprüfung und Client-Agent: Der Client-Connector kann in die Endpunktprüfung eingebunden werden, eine Chrome-Erweiterung mit einem nativen schlanken Agent, der auf Nutzerlaptops oder -computern ausgeführt wird und Geräteinformationen meldet. Die Endpunktprüfung fungiert auch als Steuerungsebene für den Endnutzer, um Verbindungen zu Client-Gateways zu starten und zu beenden.
Client-Gateways: Regionale serverseitige Komponenten, zu denen Clients eine Verbindung herstellen können. Client-Gateways werden von Administratoren bereitgestellt. Die Gateways kommunizieren mit dem BeyondCorp Enterprise-Erzwingungssystem, um kontextsensitive Prüfungen zu erzwingen. Das BeyondCorp Enterprise-Erzwingungssystem verwendet Identity-Aware Proxy und Access Context Manager, eine flexible Zero-Trust-Richtlinien-Engine von BeyondCorp Enterprise.
Der Client-Connector sendet von einem Nutzer, Client oder Gerät über einen sicheren Kanal und ein Gateway Traffic an Ihre geschützten Anwendungen. Sie können eine Verbindung zu Web- und anderen Webanwendungen herstellen, die in Google Cloud oder außerhalb von Google Cloud ausgeführt werden. Sie können Cloud VPN oder Cloud Interconnect verwenden, um eine Verbindung zu Ihren Anwendungen herzustellen, die sich nicht in Google Cloud befinden.
Hinweis
Bevor Sie den BeyondCorp Enterprise-Client-Connector aktivieren, müssen folgende Voraussetzungen erfüllt sein:
Eine Google Cloud-Organisationsdomain.
Ein Google Cloud-Projekt mit zugewiesener Abrechnung.
Google Workspace-Cloud Identity-Nutzerkonten. Informationen zum Erstellen von Cloud Identity-Konten finden Sie unter Cloud Identity-Nutzerkonten erstellen.
Eine Nicht-Webressource, die Sie schützen möchten. Die Ressource kann in Google Cloud, lokal oder in einer anderen öffentlichen Cloud nativ sein. Sie können eine benutzerdefinierte VPC erstellen oder Ihr vorhandenes Netzwerk mit einer Anwendung in Google Cloud verwenden. Sie können auch Nicht-Google Cloud-Anwendungen über Cloud VPN oder Cloud Interconnect verbinden.
Die folgenden APIs sind aktiviert:
- Compute Engine APIs:
compute.googleapis.com
- BeyondCorp Enterprise API-APIs:
beyondcorp.googleapis.com
- Service Networking APIs:
servicenetworking.googleapis.com
- Access Context Manager APIs:
accesscontextmanager.googleapis.com
- Compute Engine APIs:
Die folgenden IAM-Rollen:
Projektebene: Compute-Netzwerkadministrator (
roles/compute.networkAdmin
), BeyondCorp Client Connector-Administrator (roles/beyondcorp.clientConnectorAdmin
)Organisationsebene: Access Context Manager-Administrator (
roles/accesscontextmanager.policyAdmin
)
Eine der empfohlenen Hardwarekonfigurationen für den Client:
- Apple® Mac® OS 10.11 und höher mit mindestens zwei Kernen und 2 GB Arbeitsspeicher
- Microsoft® Windows® 10 und höher mit mindestens vier Kernen und 2 GB Arbeitsspeicher.
BeyondCorp Enterprise-Client-Connector aktivieren
Zugriff auf private Dienste einrichten
Der Client-Connector verwendet privaten Zugriff auf Dienste, um die Verbindung zwischen dem von Google verwalteten VPC-Netzwerk und dem VPC-Netzwerk des Nutzers zu ermöglichen. Dadurch wird der Traffic von Nutzern an das Nutzer-VPC-Netzwerk weitergeleitet.
Console
Für den Zugriff auf private Dienste müssen Sie einen IP-Adressbereich reservieren, damit es zwischen Ihrem VPC-Netzwerk und dem von Google verwalteten VPC-Netzwerk zu keinen IP-Adresskonflikten kommt. Führen Sie die folgenden Schritte aus, um einen IP-Bereich zuzuweisen:
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Zur Seite "VPC-Netzwerke"Wählen Sie das VPC-Netzwerk aus, das mit Ihrer Anwendung verbunden ist.
Wählen Sie den Tab Private Dienstverbindung aus.
Wählen Sie auf dem Tab Private Dienstverbindung den Tab Diensten zugewiesene IP-Bereiche aus.
Klicken Sie auf IP-Bereich zuweisen.
Geben Sie einen Namen und eine Beschreibung für den zuzuweisenden IP-Bereich ein.
Geben Sie einen IP-Bereich für die Zuweisung an:
- Wenn Sie einen IP-Adressbereich festlegen möchten, wählen Sie Benutzerdefiniert aus und geben einen CIDR-Block ein, z. B.
192.168.0.0/16
. - Wenn Sie eine Präfixlänge festlegen möchten und die Auswahl eines verfügbaren Bereichs durch Google erfolgen soll, wählen Sie Automatisch aus und geben eine Präfixlänge ein, beispielsweise
16
.
Geben Sie ein Netzwerk von mindestens
/24
an.- Wenn Sie einen IP-Adressbereich festlegen möchten, wählen Sie Benutzerdefiniert aus und geben einen CIDR-Block ein, z. B.
Klicken Sie auf Zuweisen, um den zugewiesenen Bereich zu erstellen.
So erstellen Sie eine VPC-Netzwerk-Peering-Verbindung:
- Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Zur Seite "VPC-Netzwerke" - Wählen Sie das VPC-Netzwerk aus, das mit Ihrer Anwendung verbunden ist.
- Wählen Sie den Tab Private Dienstverbindung aus.
- Wählen Sie auf dem Tab Private Dienstverbindung den Tab Private Verbindungen zu Diensten aus.
- Klicken Sie auf Verbindung erstellen, um eine private Verbindung zwischen Ihrem Netzwerk und dem Client-Connector-Dienst zu erstellen.
- Übernehmen Sie im angezeigten Fenster die Standardeinstellung für Connected Service Producer. Wählen Sie für Zugewiesene Bereiche den zugewiesenen Bereich aus, den Sie im vorherigen Schritt erstellt haben.
- Klicken Sie auf Verbinden, um die Verbindung zu erstellen.
- Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Erstellen Sie eine Firewallregel.
- Rufen Sie in der Google Cloud Console die Seite Firewall auf.
Zur Seite "Firewall" - Klicken Sie auf Firewallregel erstellen.
- Geben Sie einen Namen für die Firewallregel ein.
Dieser Name muss für das Projekt eindeutig sein. - Optional: Sie können das Logging von Firewallregeln aktivieren:
- Klicken Sie auf Logs > Ein.
- Wenn Sie Metadaten weglassen möchten, maximieren Sie Logdetails und entfernen Sie das Häkchen bei Metadaten einschließen.
- Geben Sie das Netzwerk an, das mit Ihrer Anwendung verbunden ist.
- Legen Sie die Priorität der Regel fest. Je kleiner die Zahl, desto höher die Priorität.
- Wählen Sie für Traffic-Richtung die Option Eingehend aus.
- Wählen Sie für Aktion bei Übereinstimmung die Option Zulassen aus.
- Wählen Sie für Ziele die Option Alle Instanzen im Netzwerk aus.
- Wählen Sie für Quellfilter die Option IPv4-Bereiche aus und geben Sie dann die Werte
address
undprefixLength
aus Schritt 1 ein, um den zugewiesenen IP-Bereich im CIDR-Format darzustellen. Verwenden Sie für jede IPv4-Quelle das Format0.0.0.0/0
. - Wählen Sie unter Protokolle und Ports die Option Alle zulassen aus, um die Regel auf alle Protokolle und Zielports anzuwenden.
- Klicken Sie auf ERSTELLEN.
- Rufen Sie in der Google Cloud Console die Seite Firewall auf.
gcloud
Für den Zugriff auf private Dienste müssen Sie einen IP-Adressbereich reservieren, damit es zwischen Ihrem VPC-Netzwerk und dem von Google verwalteten VPC-Netzwerk zu keinen IP-Adresskonflikten kommt. Führen Sie den folgenden Befehl aus, um einen IP-Bereich zuzuweisen:
gcloud compute addresses create RESERVED_RANGE \ --network=CONSUMER_NETWORK \ --project=CONSUMER_PROJECT \ --prefix-length=16 \ --purpose=VPC_PEERING \ --global
Dabei gilt:
- RESERVED_RANGE: Der Name des IP-Adressbereichs, der für VPC-Peering reserviert werden soll. Der Name darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten.
- CONSUMER_NETWORK: Der Name Ihres VPC-Netzwerks, das mit der Anwendung verbunden ist.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird.
Erstellen Sie die VPC-Peering-Verbindung.
gcloud services vpc-peerings connect \ --network=CONSUMER_NETWORK \ --project=CONSUMER_PROJECT \ --ranges=RESERVED_RANGE \ --service="servicenetworking.googleapis.com"
Dabei gilt:
- CONSUMER_NETWORK: Der Name Ihres VPC-Netzwerks, das mit der Anwendung verbunden ist.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - RESERVED_RANGE: Der Name Ihres reservierten Bereichs für VPC-Peering.
Rufen Sie die Details des zugewiesenen IP-Bereichs ab.
gcloud compute addresses describe RESERVED_RANGE \ --global \ --project=CONSUMER_PROJECT
Dabei gilt:
- RESERVED_RANGE: Der Name Ihres reservierten Bereichs für VPC-Peering.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird.
Verwenden Sie die Werte
address
undprefixLength
aus der Ausgabe im vorherigen Schritt, um den zugewiesenen IP-Bereich im CIDR-Format darzustellen. Erstellen Sie dann eine Firewallregel.gcloud compute firewall-rules create "allow-peered-ingress" \ --network=CONSUMER_NETWORK \ --project=CONSUMER_PROJECT \ --direction ingress \ --action allow \ --source-ranges={Allocated IP range in CIDR format i.e. address/prefixLength} \ --rules=all
Dabei gilt:
- CONSUMER_NETWORK: Der Name Ihres VPC-Netzwerks, das mit der Anwendung verbunden ist.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird.
Informationen zum Konfigurieren von Firewallregeln finden Sie unter VPC-Firewallregeln verwenden.
Client-Connector-Ressourcen einrichten
Sie müssen zwei Arten von Ressourcen einrichten:
- Client-Connector-Dienst: Definiert eine gemeinsame Konfiguration für eine Gruppe von Client-Gateways.
- Client-Gateway: Bezieht sich auf den Client-Connector-Dienst und steuert die Regionen, in denen Sie Nutzer-Traffic verwalten möchten.
Es ist nur ein Client-Connector-Dienst pro Domain und ein Client-Gateway pro Region pro Client-Connector-Dienst zulässig. Außerdem können Sie nur die folgenden Regionen zum Hosten des Client-Connector-Dienstes und der Gateway-Ressourcen verwenden: asia-east1
, europe-west1
, us-east1
und us-central1
.
Client-Connector-Dienst erstellen
Console
Rufen Sie die IAP-Administratorseite auf.
Klicken Sie auf Connectors > CLIENT-Connector AKTIVIEREN.
Geben Sie das VPC-Netzwerk ein, das Traffic von verwalteten Clients empfangen soll.
Wählen Sie die Regionen aus, zu denen Ihre Kunden eine Verbindung herstellen können. In diesem Schritt werden die Client-Gateways erstellt. Sie müssen die Gateways also nicht im Verfahren Client-Gateways erstellen, überprüfen oder entfernen erstellen.
Geben Sie den IP-Adressbereich für die Anwendungen ein, die der Client-Connector erreichen soll.
Klicken Sie auf CLIENT-Connector AKTIVIEREN. Das Erstellen des Connectors kann einige Minuten dauern.
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud beta beyondcorp client-connector services create CLIENT_CONNECTOR_SERVICE_NAME \ --project=CONSUMER_PROJECT \ --location=SERVICE_LOCATION \ --config-from-file=/path/to/file/config.json
Dabei ist config.json
:
{ "ingress": { "config": { "transportProtocol": "TCP", "destinationRoutes": [{ "address": "DESTINATION_ADDRESS", "netmask": "DESTINATION_MASK" }] } }, "egress": { "peeredVpc": { "networkVpc": "projects/CONSUMER_PROJECT/global/networks/CONSUMER_NETWORK" } } }
Dabei gilt:
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der der Client-Connector-Dienst erstellt werden soll. Sie können eine der folgenden Regionen angeben:
asia-east1
,europe-west1
,us-east1
undus-central1
. - DESTINATION_ADDRESS: Die Hostadresse des Zielsubnetzes, in dem die Anwendung gehostet wird. Wenn Ihre Anwendung beispielsweise
10.0.0.0/28
verwendet, lautet die Adresse10.0.0.0
. - DESTINATION_MASK: Die Netzwerkmaske des Zielsubnetzes, in dem die Anwendung gehostet wird. Wenn Ihre Anwendung beispielsweise
10.0.0.0/28
verwendet, ist die Maske255.255.255.240
. - CONSUMER_NETWORK: Der Name Ihres VPC-Netzwerks, das mit der Anwendung verbunden ist.
API
Führen Sie dazu diesen Befehl aus:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d @config.json \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices?client_connector_service_id=CLIENT_CONNECTOR_SERVICE_NAME
Dabei ist config.json
:
{ "ingress": { "config": { "transportProtocol": "TCP", "destinationRoutes": [{ "address": "DESTINATION_ADDRESS", "netmask": "DESTINATION_MASK" }] } }, "egress": { "peeredVpc": { "networkVpc": "projects/CONSUMER_PROJECT/global/networks/CONSUMER_NETWORK" } } }
Dabei gilt:
- DESTINATION_ADDRESS: Die Hostadresse des Zielsubnetzes, in dem die Anwendung gehostet wird. Wenn Ihre Anwendung beispielsweise
10.0.0.0/28
verwendet, lautet die Adresse10.0.0.0
. - DESTINATION_MASK: Die Netzwerkmaske des Zielsubnetzes, in dem die Anwendung gehostet wird. Wenn Ihre Anwendung beispielsweise
10.0.0.0/28
verwendet, ist die Maske255.255.255.240
. - CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - CONSUMER_NETWORK: Der Name Ihres VPC-Netzwerks, das mit der Anwendung verbunden ist.
- SERVICE_LOCATION: Die Region, in der der Client-Connector-Dienst erstellt werden soll.
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
Prüfen Sie, ob der Client-Connector-Dienst erstellt wurde, indem Sie den Dienst auflisten
Console
Rufen Sie die IAP-Administratorseite auf.
Klicken Sie auf Connectors. Der Connector sollte im Abschnitt Client-Connector aufgeführt sein und mit einem grünen Häkchen für den Status versehen werden.
gcloud
Führen Sie den folgenden Befehl aus:
gcloud beta beyondcorp client-connector services list \ --project=CONSUMER_PROJECT \ --location=SERVICE_LOCATION
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der der Client-Connector-Dienst erstellt werden soll.
API
Führen Sie dazu diesen Befehl aus:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
Optional: Client-Connector-Dienst aktualisieren
Console
So aktualisieren Sie die Zielrouten:
Rufen Sie die IAP-Administratorseite auf.
Klicken Sie auf Connectors.
Klicken Sie im Abschnitt Client-Connector auf das Stiftsymbol neben dem Client-Connector, den Sie aktualisieren möchten.
Geben Sie die neuen Hostadressen und Netzwerkmasken der Zielsubnetze ein, in denen die Anwendungen gehostet werden, und klicken Sie dann auf CLIENT TOOL AKTUALISIEREN.
gcloud
Aktualisieren Sie die Zielrouten mit dem folgenden Befehl:
gcloud beta beyondcorp client-connector services update CLIENT_CONNECTOR_SERVICE_NAME \ --project=CONSUMER_PROJECT \ --location=SERVICE_LOCATION \ --config-from-file=/path/to/file/config.json
Dabei ist config.json
:
{ "ingress":{ "config":{ "destinationRoutes":[ { "address":"NEW_DESTINATION_ADDRESS1", "netmask":"NEW_DESTINATION_MASK1" }, { "address":"NEW_DESTINATION_ADDRESS2", "netmask":"NEW_DESTINATION_MASK2" } ] } } }
Dabei gilt:
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
- NEW_DESTINATION_ADDRESS1, NEW_DESTINATION_ADDRESS2: Die neuen Hostadressen der Zielsubnetze, auf denen die Anwendungen gehostet werden.
- NEW_DESTINATION_MASK1, NEW_DESTINATION_MASK2: Die neuen Netzwerkmasken für die Zielsubnetze.
API
Führen Sie den folgenden Befehl aus, um die Zielrouten zu aktualisieren:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d @update.json \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME?update_mask=ingress.config.destinationRoutes
Wo update.json
Folgendes ist:
{ "ingress":{ "config":{ "destinationRoutes":[ { "address":"NEW_DESTINATION_ADDRESS1", "netmask":"NEW_DESTINATION_MASK1" }, { "address":"NEW_DESTINATION_ADDRESS2", "netmask":"NEW_DESTINATION_MASK2" } ] } } }
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- NEW_DESTINATION_ADDRESS1, NEW_DESTINATION_ADDRESS2: Die neuen Hostadressen der Zielsubnetze, auf denen die Anwendungen gehostet werden.
- NEW_DESTINATION_MASK1, NEW_DESTINATION_MASK2: Die neuen Netzwerkmasken für die Zielsubnetze.
Optional: Client-Connector-Dienst entfernen
Console
Rufen Sie die IAP-Administratorseite auf.
Klicken Sie auf Connectors.
Klicken Sie im Abschnitt Client-Connector auf das Papierkorbsymbol, um den Client-Connector-Dienst und die Gateways zu entfernen. Dieser Vorgang kann einige Minuten dauern.
gcloud
Führen Sie den folgenden Befehl aus:
gcloud beta beyondcorp client-connector services delete CLIENT_CONNECTOR_SERVICE_NAME \ --project CONSUMER_PROJECT \ --location SERVICE_LOCATION
Dabei gilt:
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
API
Führen Sie den folgenden Befehl aus:
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
Client-Gateways erstellen, bestätigen oder entfernen
Console
Wenn Sie die Konsole verwenden, um den Client-Connector einzurichten, werden die Client-Gateways beim Erstellten des Client-Connector-Dienstes in einem vorherigen Schritt erstellt.
So prüfen Sie, ob die Client-Gateways aktiv sind:
- Rufen Sie die IAP-Administratorseite auf.
- Klicken Sie auf Connectors. Der Connector und die zugehörigen Gateways sollten im Abschnitt Client-Connector aufgeführt sein und mit einem grünen Häkchen für den Status versehen werden.
Optional: Führen Sie die folgenden Schritte aus, um ein Clientgateway zu entfernen.
Rufen Sie die IAP-Administratorseite auf.
Klicken Sie auf Connectors.
Klicken Sie im Abschnitt Client-Connector auf das Stiftsymbol neben dem Client-Connector, aus dem Sie ein Gateway entfernen möchten.
Entfernen Sie eine Region aus dem Connector-Dienst, indem Sie in der Drop-down-Liste Gateway regions (Gateway-Regionen) das Häkchen aus dem Kästchen für die Region entfernen, und klicken Sie dann auf CLIENT Connector AKTUALISIEREN.
gcloud
Erstellen Sie ein Clientgateway.
gcloud beta beyondcorp client-connector gateways create CLIENT_GATEWAY_NAME \ --project CONSUMER_PROJECT \ --location GATEWAY_LOCATION \ --client-connector-service \ projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME
Dabei gilt:
- CLIENT_GATEWAY_NAME: Der Name Ihres Clientgateways.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - GATEWAY_LOCATION: Region, in der das Clientgateway erstellt werden soll.
- SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
Prüfen Sie, ob die Client-Gateways aktiv sind.
gcloud beta beyondcorp client-connector gateways list \ --project CONSUMER_PROJECT \ --location GATEWAY_LOCATION
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - GATEWAY_LOCATION: Die Region, in der sich das Clientgateway befindet.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
Optional: Entfernen Sie ein Clientgateway.
gcloud beta beyondcorp client-connector gateways delete CLIENT_GATEWAY_NAME \ --project CONSUMER_PROJECT \ --location GATEWAY_LOCATION
Dabei gilt:
- CLIENT_GATEWAY_NAME: Der Name Ihres Clientgateways.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - GATEWAY_LOCATION: Die Region, in der sich das Clientgateway befindet.
API
Führen Sie den folgenden Befehl aus:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{client_connector_service: \"projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME\"}" \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/GATEWAY_LOCATION/clientGateways?client_gateway_id=CLIENT_GATEWAY_NAME
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- GATEWAY_LOCATION: Die Region, in der das Clientgateway erstellt werden soll.
- CLIENT_GATEWAY_NAME: Der Name Ihres Clientgateways.
Dieser Schritt kann mehrere Minuten dauern.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
Prüfen Sie, ob die Client-Gateways aktiv sind.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/GATEWAY_LOCATION/clientGateways
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - GATEWAY_LOCATION: Die Region, in der sich das Clientgateway befindet.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
Optional: Entfernen Sie ein Clientgateway.
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/GATEWAY_LOCATION/clientGateways/CLIENT_GATEWAY_NAME
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - GATEWAY_LOCATION: Die Region, in der sich das Client-Connector-Gateway befindet.
- CLIENT_GATEWAY_NAME: Der Name Ihres Clientgateways.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
Richtlinien für den kontextsensitiven Zugriff einrichten
Ermitteln Sie die Hauptkonten oder erstellen Sie eine Nutzergruppe. Identifizieren Sie die Nutzer, die Zugriff auf die geschützten Nicht-Webanwendungen benötigen. Alternativ können Sie eine Nutzergruppe erstellen, um die Konfiguration und Verwaltung zu vereinfachen.
Optional: Erstellen Sie eine Zugriffsebene in Access Context Manager, um eine kontextsensitive Regel zu definieren, mit der Sie den Zugriff auf Ihre Anwendung einschränken können.
Konfigurieren Sie eine IAM-Richtlinie für die Client-Connector-Dienstressource und gewähren Sie dem Hauptkonto oder der Nutzergruppe die Rolle „Cloud BeyondCorp Client Connector-Dienstnutzer“ (
roles/beyondcorp.clientConnectorServiceUser
), die für den Zugriff auf Nicht-Webanwendungen erforderlich ist. Optional können Sie eine IAM-Bedingung angeben, um die Rolle nur bereitzustellen, wenn eine Zugriffsebene erfüllt ist. Sie können die IAM-Richtlinie für eine Ressource über die Console oder die API aktualisieren.Führen Sie in der Konsole die folgenden Schritte aus:
- Rufen Sie die IAP-Administratorseite auf.
- Klicken Sie auf ANWENDUNGEN.
- Wenn Sie noch keinen OAuth-Zustimmungsbildschirm konfiguriert haben, müssen Sie das tun, um diesen Schritt abzuschließen. Wählen Sie im Abschnitt NEUE ANWENDUNG VERKNÜPFEN Ihren Connector unter Andere Webanwendungen aus.
- Klicken Sie im angezeigten Fenster auf HAUPTKONTO HINZUFÜGEN.
- Weisen Sie dem Hauptkonto oder der Nutzergruppe die Rolle
Cloud BeyondCorp Client Connector Service User
(roles/beyondcorp.clientConnectorServiceUser
) zu, die für den Zugriff auf Nicht-Web-Apps erforderlich ist. Optional können Sie eine Zugriffsebene angeben, um die Rolle nur bereitzustellen, wenn die Zugriffsebene erfüllt ist. Sie müssen ein Administrator der Organisation sein oder die Berechtigungenview
undedit
für die Zugriffsebenen der Organisation haben, um eine Zugriffsebene anzugeben. - Klicken Sie auf SPEICHERN.
IAM-Richtlinie aktualisieren
Console
- Rufen Sie die IAP-Administratorseite auf.
- Klicken Sie auf den Tab ANWENDUNGEN und maximieren Sie in der Liste Ressource die Option Nicht-Webanwendungen.
- Wählen Sie den Client-Connector aus. Ein Abschnitt mit den mit dem Connector verknüpften IAM-Berechtigungen wird geöffnet.
- Im Abschnitt, der geöffnet wird, können Sie die IAM-Richtlinien aktualisieren, die mit Ihrem Client-Connector verknüpft sind.
gcloud
Lesen Sie die vorhandene Richtlinie. Die Methode
getIamPolicy()
liest die vorhandene IAM-Richtlinie für die Dienstressource des Client-Connectors inpolicy.json
.gcloud beta beyondcorp client-connector services get-iam-policy CLIENT_CONNECTOR_SERVICE_NAME \ --project=CONSUMER_PROJECT \ --location=SERVICE_LOCATION > policy.json
Dabei gilt:
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
Bearbeiten Sie die zurückgegebene Richtlinie. Aktualisieren Sie die Bindungen in
policy.json
, um die neue IAM-Rollenzuweisung aufzunehmen. Sie können dies in einem Texteditor oder programmatisch tun. Beispiel:{ "bindings": [ { "role": "roles/beyondcorp.clientConnectorServiceUser", "members": [ "user:EXAMPLE_USER@EXAMPLE.COM", "group:EXAMPLE_GROUP@EXAMPLE.COM", ], "condition": { "expression": "'accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME' in request.auth.access_levels", "title": "CONDITION_NAME" } } ] }
Dabei gilt:
- POLICY_NAME: Der numerische Name Ihrer Access Context Manager-Zugriffsrichtlinie.
- LEVEL_NAME: Der Name Ihrer Zugriffsebene für Access Context Manager.
- CONDITION_NAME: Der Titeltext für die IAM-Bedingung.
Schreiben Sie die aktualisierte Richtlinie. Mit der Methode
setIamPolicy()
können Sie die aktualisierte IAM-Richtlinie schreiben. Beispiel:gcloud beta beyondcorp client-connector services set-iam-policy CLIENT_CONNECTOR_SERVICE_NAME policy.json \ --project=CONSUMER_PROJECT \ --location=SERVICE_LOCATION
Dabei gilt:
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
API
Lesen Sie die vorhandene Richtlinie. Die Methode
getIamPolicy()
liest die vorhandene IAM-Richtlinie für die Dienstressource des Client-Connectors inpolicy.json
.curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME:getIamPolicy > policy.json
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
Bearbeiten Sie die zurückgegebene Richtlinie. Aktualisieren Sie die Bindungen in
policy.json
, um die neue IAM-Rollenzuweisung aufzunehmen. Sie können dies in einem Texteditor oder programmatisch tun. Beispiel:{ "policy": { "bindings": [ { "role": "roles/beyondcorp.clientConnectorServiceUser", "members": [ "user:EXAMPLE_USER@EXAMPLE.COM", "group:EXAMPLE_GROUP@EXAMPLE.COM", ], "condition": { "expression": "'accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME' in request.auth.access_levels", "title": "CONDITION_NAME" } } ] } }
Dabei gilt:
- POLICY_NAME: Der numerische Name Ihrer Access Context Manager-Zugriffsrichtlinie.
- LEVEL_NAME: Der Name Ihrer Zugriffsebene für Access Context Manager.
- CONDITION_NAME: Der Titeltext für die IAM-Bedingung.
Schreiben Sie die aktualisierte Richtlinie. Mit der Methode
setIamPolicy()
können Sie die aktualisierte IAM-Richtlinie schreiben. Beispiel:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d @policy.json \ https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME:setIamPolicy
Dabei gilt:
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
CONSUMER_NETWORK
gehostet wird. - SERVICE_LOCATION: Die Region, in der sich der Client-Connector-Dienst befindet.
- CLIENT_CONNECTOR_SERVICE_NAME: Der Name Ihres Client-Connector-Dienstes.
- CONSUMER_PROJECT: Die ID Ihres Projekts, in dem
Client-Connector-Agent auf Endpunktgeräten installieren (Windows oder macOS)
Führen Sie die Schritte unter Endpunktprüfung auf Ihren Geräten einrichten aus, um die Erweiterung „Endpunktprüfung“ zu aktivieren.
Wenn die Endpunktprüfung eingerichtet ist und ausgeführt wird, zeigt die Erweiterung „Endpunktprüfung“ für den aktualisierten Nutzer die Schaltfläche VERBINDUNG STARTEN an. Nutzer können auf die Schaltfläche VERBINDUNG STARTEN klicken, um auf die geschützte Nicht-Webanwendung zuzugreifen.
Wenn ein Nutzer zum ersten Mal eine Verbindung initiiert, wird er von der Endpunktprüfung aufgefordert, die Binärdateien des Client-Connectors herunterzuladen und zu installieren. Alternativ können Sie die Binärprogramme der Client-Connectors unter den folgenden URLs herunterladen:
Nachdem eine Verbindung hergestellt wurde, kann ein Nutzer auf die geschützte Ressource zugreifen. Nutzer können die Verbindung beenden, indem sie auf die Schaltfläche VERBINDUNG ENDEN klicken.
Fehlerbehebung
Wenn bei der Verwendung des Client-Connectors Probleme auftreten, finden Sie in den folgenden Informationen Schritte zur Fehlerbehebung.
Sie können nicht auf Ihre App zugreifen.
Das Client-Connector-Gateway wird ausgeführt und die Verbindung wurde hergestellt. Sie können Ihre Anwendung aber trotzdem nicht erreichen.
Im Folgenden sind die häufigsten Gründe und möglichen Lösungen für dieses Problem aufgeführt:
Sie haben den zugewiesenen IP-Bereich auf Cloud VPN nicht beworben. Wenn Sie Cloud VPN verwenden, um eine Verbindung zur Nicht-Google Cloud-Anwendung herzustellen, sollten Sie auch den zugewiesenen IP-Bereich für den privaten Zugriff auf den Peer-Router über das Border Gateway Protocol (BGP) anbieten. Weitere Informationen dazu finden Sie unter Werbung auf einem Cloud Router angeben.
Sie haben eine falsche Adresse und Maske in den Zielrouten angegeben. Achten Sie bei der Adresseingabe darauf, dass die maskierten Bits null sind. Beispiel:
10.0.10.1
ist eine ungültige Adresse, die mit einer255.255.255.0 (/24)
-Netzwerkmaske angegeben werden soll. Die richtige Adresse ist10.0.10.0
.Mögliche IP-Konflikte zwischen dem zugewiesenen IP-Bereich für den privaten Dienstzugriff und den IP-Subnetzen, die vom Netzwerk verwendet werden, das die Anwendung hostet. Achten Sie darauf, dass sich diese Bereiche gegenseitig ausschließen. Dieses Problem tritt am häufigsten auf, wenn die Anwendung in einem Nicht-Google Cloud-Netzwerk gehostet wird.
Sie erhalten die Nachricht Unable to connect to the network
Wenn Sie die Meldung Unable to connect to the network. Check your network
connection and try again.
erhalten, ist die Internetverbindung auf Ihrem Gerät nicht aktiv.
Lösung: Prüfe, ob deine Internetverbindung aktiv ist, und versuche dann noch einmal, eine Verbindung herzustellen.
Audit-Logs
Als Administrator können Sie BeyondCorp Enterprise-Audit-Logs, einschließlich der Client-Connector-Audit-Logs, auf der Seite Logging der Google Cloud Console aufrufen. Weitere Informationen finden Sie unter Audit-Logging für BeyondCorp Enterprise-Dienste.
Als Endnutzer können Sie mit folgenden Schritten auf Verbindungslogs zugreifen:
- Klicken Sie im Browser mit der rechten Maustaste auf die Erweiterung „Endpunktprüfung“.
- Klicken Sie auf Optionen.
- Wählen Sie den Detaillierungsgrad für die Protokollebene aus. Der Detaillierungsgrad ist standardmäßig auf Info festgelegt.
- Klicken Sie auf Protokoll anzeigen.
Nächste Schritte
- BeyondCorp Enterprise API
- gcloud-Beta
- Nicht-Google Cloud-Anwendungen mit dem Anwendungs-Connector sichern