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.com
Achten 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
gcloud
workstations get-iam-policy
ab. Mit diesem Befehl wird die Richtlinie in die Datei/tmp/WORKSTATIONS_NAME.yaml
ausgegeben. 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.yaml
Ersetzen 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.yaml
heruntergeladen:bindings: - members: - user:222larabrown@gmail.com role: roles/workstations.user etag: BwYdnV9Eg7Y= version: 1
Wenn 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
3
angegeben werden, da diese Richtlinie das Feldcondition
enthä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: 3
Ersetzen Sie Folgendes:
YOUR_ID
: Ihre eigene Anmelde-ID. Beispiel:222larabrown@gmail.com
PRINCIPAL
: Das Hauptkonto, mit dem Sie den Zugriff auf den Port WORKSTATIONS_PORT der Workstation teilen möchten. Beispiel:baklavainthebalkans@gmail.com
WORKSTATIONS_PORT
: Der Workstation-Port, an dem der Demoserver auf Anfragen wartet.
Legen Sie die IAM-Richtlinie der Workstation mit dem CLI-Befehl
gcloud
workstations set-iam-policy
fest.gcloud workstations set-iam-policy WORKSTATIONS_NAME \ --cluster=WORKSTATIONS_CLUSTER_NAME \ --config=WORKSTATIONS_CONFIG_NAME \ --region=LOCATION \ --project=WORKSTATIONS_PROJECT_ID \ /tmp/WORKSTATIONS_NAME.yaml
Ersetzen 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.