Sie können IAM-Bedingungen verwenden, um Zugriff auf einzelne Workstation-Ports zu gewähren. Dies ist nützlich, um den Zugriff auf einzelne Arbeitsstationsports einzuschränken. Sie können beispielsweise IAM-Bedingungen verwenden, um Zugriff auf einen Demoserver zu gewähren, der auf einem Arbeitsstationsport ausgeführt wird.
Cloud Workstations unterstützt das Attribut destination.port IAM Conditions.
Weitere Informationen zu IAM Conditions finden Sie in den folgenden Abschnitten:
Hinweise
Bevor Sie Zugriff auf einzelne Workstation-Ports gewähren können, müssen Sie die Rolle „Cloud Workstations Policy Admin“ (roles/workstations.policyAdmin) für die Workstation haben.
IAM-Rollen auf der Workstation prüfen
Sie benötigen die Rollen „Cloud Workstations-Nutzer“ (roles/workstations.user) und „Cloud Workstations Policy Admin“ (roles/workstations.policyAdmin) für die Workstation. Wenn Sie sie nicht haben, bitten Sie den Cloud Workstations-Administrator Ihrer Organisation, Ihnen diese Rollen für die Workstation zu gewähren.
Demoserver auf der Workstation starten
Folgen Sie der Anleitung unter Workstation starten, um Ihre Workstations zu starten und eine Verbindung zu ihnen herzustellen. Führen Sie den folgenden Befehl auf der Workstation aus, um einen Demoserver auf einem Workstation-Port zu starten.
python3 -m http.server WORKSTATIONS_PORT
Ersetzen Sie Folgendes:
WORKSTATIONS_PORT: Der Port, auf dem der Demoserver auf Anfragen wartet. Verwenden Sie beispielsweise 8081.
Bedingte IAM-Richtlinie der Workstation aktualisieren
Um Zugriff auf einen Arbeitsstationsport zu gewähren, können Sie die Google Cloud Console oder den gcloud CLI-Befehl iam policies verwenden.
Console
So gewähren Sie bedingten Zugriff auf die Workstation:
Rufen Sie in der Google Cloud Console die Seite Cloud Workstations > Workstations auf.
Suchen Sie Ihre Workstation, klicken Sie auf das Menü more_vertMehr und wählen Sie Nutzer hinzufügen aus.

Wenn Sie bedingten Zugriff gewähren möchten, geben Sie die E-Mail-Adresse des Hauptkontos ein. Beispiel:
222larabrown@gmail.comAchten Sie darauf, dass Cloud Workstations User als Rolle ausgewählt ist.
Aktualisieren Sie die IAM-Bedingung, um portspezifischen Zugriff zu gewähren:
Klicken Sie auf IAM-Bedingung hinzufügen.
Geben Sie einen Titel an, z. B. Port WORKSTATIONS_PORT.
Geben Sie auf dem Tab Bedingungseditor die folgende Bedingung ein:
destination.port == WORKSTATIONS_PORT
- Klicken Sie auf Speichern, um dem Hauptkonto den bedingten Zugriff auf den jeweiligen Port zu gewähren.
gcloud
Rufen Sie die IAM-Richtlinie für die Workstation mit dem CLI-Befehl
gcloudworkstations get-iam-policyab. Mit diesem Befehl wird die Richtlinie in die Datei/tmp/WORKSTATIONS_NAME.yamlausgegeben. Wenn die Datei vorhanden ist, wird sie überschrieben.gcloud workstations get-iam-policy WORKSTATIONS_NAME \ --cluster=WORKSTATIONS_CLUSTER_NAME \ --config=WORKSTATIONS_CONFIG_NAME \ --region=LOCATION \ --project=WORKSTATIONS_PROJECT_ID \ > /tmp/WORKSTATIONS_NAME.yamlErsetzen Sie Folgendes:
WORKSTATIONS_NAME: Der Name der Arbeitsstation.WORKSTATIONS_CONFIG_NAME: Der Name der Workstation-Konfiguration.WORKSTATIONS_CLUSTER_NAME: Der Name des Workstation-Clusters.LOCATION: Der Regionsname für Ihren Workstation-Cluster.WORKSTATIONS_PROJECT_ID: Die ID des Cloud Workstations-Projekts, das Ihre Workstation enthält.
Das YAML-Format der Richtlinie wird in
/tmp/WORKSTATIONS_NAME.yamlheruntergeladen:bindings: - members: - user:222larabrown@gmail.com role: roles/workstations.user etag: BwYdnV9Eg7Y= version: 1Wenn Sie einem Hauptkonto bedingten Zugriff gewähren möchten, fügen Sie der Richtliniendatei, die Sie im vorherigen Schritt heruntergeladen haben, den folgenden hervorgehobenen Bedingungsausdruck hinzu.
Ändern Sie das ETag nicht. Die Version muss als
3angegeben werden, da diese Richtlinie das Feldconditionenthält.Beispiel:
bindings: - members: - user:YOUR_ID role: roles/workstations.user - condition: expression: destination.port == WORKSTATIONS_PORT title: Port WORKSTATIONS_PORT members: - user:PRINCIPAL role: roles/workstations.user etag: BwYlui8uSXo= version: 3Ersetzen Sie Folgendes:
YOUR_ID: Ihre eigene Anmelde-ID. Beispiel:222larabrown@gmail.comPRINCIPAL: Das Hauptkonto, mit dem Sie den Zugriff auf den Port WORKSTATIONS_PORT der Workstation teilen möchten. Beispiel:baklavainthebalkans@gmail.comWORKSTATIONS_PORT: Der Workstation-Port, an dem der Demoserver auf Anfragen wartet.
Legen Sie die IAM-Richtlinie der Workstation mit dem CLI-Befehl
gcloudworkstations set-iam-policyfest.gcloud workstations set-iam-policy WORKSTATIONS_NAME \ --cluster=WORKSTATIONS_CLUSTER_NAME \ --config=WORKSTATIONS_CONFIG_NAME \ --region=LOCATION \ --project=WORKSTATIONS_PROJECT_ID \ /tmp/WORKSTATIONS_NAME.yamlErsetzen Sie Folgendes:
WORKSTATIONS_NAME: Der Name der Arbeitsstation.WORKSTATIONS_CONFIG_NAME: Der Name der Workstation-Konfiguration.WORKSTATIONS_CLUSTER_NAME: Der Name des Workstation-Clusters.LOCATION: Der Regionsname für Ihren Workstation-Cluster.WORKSTATIONS_PROJECT_ID: Die ID des Cloud Workstations-Projekts, das Ihre Workstation enthält.
Nachdem die IAM-Richtlinie der Workstation aktualisiert wurde, kann das Hauptkonto auf den angegebenen Port der Workstation zugreifen.
URL der Arbeitsstation teilen
Das Hauptkonto kann mit der folgenden Arbeitsstations-URL auf den angegebenen Port zugreifen:
https://WORKSTATIONS_PORT-WORKSTATIONS_NAME.WORKSTATIONS_CLUSTER_NAME.cloudworkstations.dev
Die Platzhalter stehen für Folgendes:
WORKSTATIONS_PORT: Der Port, auf dem der Demoserver empfangsbereit ist.WORKSTATIONS_NAME: Der Name der Arbeitsstation.WORKSTATIONS_CLUSTER_NAME: die zufällig generierte Cluster-ID.cloudworkstations.dev: Der Standarddomainname für eine Workstation.
Das Hauptkonto kann nicht auf andere Ports der Workstation zugreifen, auf die es keinen Zugriff hat.