Puoi utilizzare le condizioni IAM per concedere l'accesso a singole porte della workstation. Questa funzionalità è utile per condividere l'accesso limitato a singole porte della workstation. Ad esempio, puoi utilizzare le condizioni IAM per concedere l'accesso a un server demo in esecuzione su una porta della workstation.
Cloud Workstations supporta l'attributo destination.port
Condizioni IAM.
Per ulteriori informazioni sulle condizioni IAM, consulta quanto segue:
Prima di iniziare
Prima di poter concedere l'accesso alle singole porte della workstation, devi disporre del ruolo
Amministratore policy Cloud Workstations
(roles/workstations.policyAdmin
) sulla workstation.
Controllare i ruoli IAM sulla workstation
Assicurati di disporre dei ruoli Utente Cloud Workstations (roles/workstations.user
) e
Amministratore policy Cloud Workstations (roles/workstations.policyAdmin
)
sulla workstation. In caso contrario, chiedi all'amministratore di Cloud Workstations della tua organizzazione di concederti questi ruoli sulla workstation.
Avvia un server demo nella workstation
Avvia e connettiti alle workstation utilizzando la guida Avvia workstation. Esegui il comando seguente sulla workstation per avviare un server demo su una porta della workstation.
python3 -m http.server WORKSTATIONS_PORT
Sostituisci quanto segue:
WORKSTATIONS_PORT
: la porta su cui il server demo ascolterà. Ad esempio, usa 8081.
Aggiorna la policy IAM condizionale della workstation
Per concedere l'accesso a una porta della workstation, puoi utilizzare la console Google Cloud o il comando
gcloud
CLI iam policies
.
Console
Per concedere l'accesso condizionale alla workstation:
Nella console Google Cloud , vai alla pagina Cloud Workstations > Workstation.
Trova la tua workstation, fai clic sul menu delle opzioni more_vertAltro e seleziona Aggiungi utenti.
Per concedere l'accesso condizionale, inserisci l'email dell'entità. Ad esempio,
222larabrown@gmail.com
.Assicurati che sia selezionato Utente Cloud Workstations come ruolo.
Aggiorna la condizione IAM per concedere l'accesso specifico alla porta:
Fai clic su Aggiungi condizione IAM.
Specifica un titolo come Porta WORKSTATIONS_PORT.
Nella scheda Editor condizioni, inserisci la seguente condizione:
destination.port == WORKSTATIONS_PORT
- Fai clic su Salva per finalizzare la concessione dell'accesso condizionale alla porta specifica all'entità.
gcloud
Recupera il criterio IAM della workstation utilizzando il comando
gcloud
CLIworkstations get-iam-policy
. Questo comando restituisce il criterio al file:/tmp/WORKSTATIONS_NAME.yaml
. Se il file esiste, verrà sovrascritto.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
Sostituisci quanto segue:
WORKSTATIONS_NAME
: il nome della workstation.WORKSTATIONS_CONFIG_NAME
: il nome della configurazione della workstation.WORKSTATIONS_CLUSTER_NAME
: il nome del cluster di workstation.LOCATION
: il nome della regione del cluster di workstation.WORKSTATIONS_PROJECT_ID
: l'ID del progetto Cloud Workstations che contiene la workstation.
Il formato YAML del criterio viene scaricato in
/tmp/WORKSTATIONS_NAME.yaml
:bindings: - members: - user:222larabrown@gmail.com role: roles/workstations.user etag: BwYdnV9Eg7Y= version: 1
Per concedere l'accesso condizionale a un'entità, aggiungi la seguente espressione condizionale evidenziata al file delle norme che hai scaricato nel passaggio precedente.
Non modificare l'etag. Assicurati che la versione sia specificata come
3
, poiché questa norma include il campocondition
.Ad esempio:
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
Sostituisci quanto segue:
YOUR_ID
: il tuo ID di accesso. Ad esempio,222larabrown@gmail.com
.PRINCIPAL
: l'entità di cui vuoi condividere l'accesso alla porta WORKSTATIONS_PORT della workstation. Ad esempio:baklavainthebalkans@gmail.com
.WORKSTATIONS_PORT
: la porta della workstation su cui il server demo è in ascolto.
Imposta il criterio IAM della workstation utilizzando il comando
gcloud
CLIworkstations set-iam-policy
.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
Sostituisci quanto segue:
WORKSTATIONS_NAME
: il nome della workstation.WORKSTATIONS_CONFIG_NAME
: il nome della configurazione della workstation.WORKSTATIONS_CLUSTER_NAME
: il nome del cluster di workstation.LOCATION
: il nome della regione del cluster di workstation.WORKSTATIONS_PROJECT_ID
: l'ID del progetto Cloud Workstations contenente la workstation.
Dopo l'aggiornamento della policy IAM della workstation, il principal potrà accedere alla porta specificata della workstation.
Condividere l'URL della workstation
L'entità potrà accedere alla porta specificata con il seguente URL della workstation:
https://WORKSTATIONS_PORT-WORKSTATIONS_NAME.WORKSTATIONS_CLUSTER_NAME.cloudworkstations.dev
I segnaposto rappresentano quanto segue:
WORKSTATIONS_PORT
: la porta su cui il server demo è in ascolto.WORKSTATIONS_NAME
: il nome della workstation.WORKSTATIONS_CLUSTER_NAME
: l'identificatore del cluster generato in modo casuale.cloudworkstations.dev
: il nome di dominio predefinito per una workstation.
L'entità non potrà accedere ad altre porte della workstation a cui non ha accesso.