Un account di servizio è un tipo speciale di account e viene generalmente utilizzato da un'applicazione o da un carico di lavoro di calcolo, come un'istanza Compute Engine, anziché da una persona. Questo account è identificato dal rispettivo indirizzo email, che è univoco.
Le applicazioni usano account di servizio per chiamate API autorizzate autenticandosi come account di servizio stesso o come Google Workspace. o Cloud Identity tramite delega a livello di dominio. Quando un'applicazione si autentica come account di servizio, ha accesso a tutti e le risorse a cui l'account di servizio è autorizzato ad accedere.
Puoi utilizzare un account di servizio per identificare l'origine del traffico e configurare i criteri del proxy web sicuro, se necessario.
Questa guida illustra come:
- Crea un'istanza di Secure Web Proxy con un criterio vuoto.
- Crea e collega gli account di servizio alle risorse.
- Usa gli account di servizio per creare un criterio Secure Web Proxy.
- Creare un'istanza Secure Web Proxy.
- Testa la connettività dalle tue VM.
Prima di iniziare
Completa la configurazione iniziale passaggi.
Rivolgiti a un amministratore dell'organizzazione concedere l'accesso a un account di servizio.
Verifica di aver installato la versione 406.0.0 o successiva di Google Cloud CLI:
gcloud version | head -n1
Se hai installato una versione precedente della gcloud CLI, aggiorna la versione:
gcloud components update --version=406.0.0
Creare un'istanza di Secure Web Proxy con un criterio vuoto
Per creare un'istanza di Secure Web Proxy, crea prima un criterio di sicurezza vuoto e poi un proxy web.
Crea un criterio di sicurezza vuoto
Console
Nella console Google Cloud, vai alla pagina Sicurezza di rete.
Fai clic su Secure Web Proxy.
Fai clic sulla scheda Norme.
Fai clic su Crea un criterio.
Inserisci un nome per il criterio da creare. ad esempio
myswppolicy
.Inserisci una descrizione della norma, ad esempio
My new swp policy
.Nell'elenco Regioni, seleziona la regione in cui vuoi creare il criterio.
Fai clic su Crea.
Cloud Shell
Utilizza l'editor di testo che preferisci per creare il file
POLICY_FILE
.yaml. SostituisciPOLICY_FILE
con il nome file che per il file dei criteri.Aggiungi quanto segue al file YAML che hai creato:
name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTION
Sostituisci quanto segue:
PROJECT_NAME
: il nome del progettoREGION
: la regione a cui si applicano queste normePOLICY_NAME
: il nome del criterio che stai creandoPOLICY_DESCRIPTION
: la descrizione del criterio che stai creando
Importa il criterio di sicurezza:
gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Crea un proxy web
Console
Nella console Google Cloud, vai alla pagina Sicurezza della rete.
Fai clic su Secure Web Proxy.
Fai clic su Configura un proxy web.
Inserisci un nome per il proxy web che vuoi creare, ad esempio
myswp
.Inserisci una descrizione del proxy web, ad esempio
My new swp
.Nell'elenco Regioni, seleziona la regione in cui vuoi per creare il proxy web.
Nell'elenco Rete, seleziona la rete in cui vuoi creare il proxy web.
Nell'elenco Subnet, seleziona la subnet in cui vuoi creare il proxy web.
Inserisci l'indirizzo IP del proxy web.
Nell'elenco Certificato, seleziona il certificato da utilizzare per creare il proxy web.
Nell'elenco Criterio, seleziona il criterio che hai creato. a cui associare il proxy web.
Fai clic su Crea.
Cloud Shell
Utilizza il tuo editor di testo preferito per creare il file
GATEWAY_FILE
.yaml. SostituisciGATEWAY_FILE
con il nome file che vuoi conservare il file del proxy web.Aggiungi quanto segue al file YAML che hai creato:
name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME type: SECURE_WEB_GATEWAY ports: [GATEWAY_PORT_NUMBERS] certificateUrls: [CERTIFICATE_URLS] gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME network: projects/PROJECT_NAME/global/networks/NETWORK_NAME subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET_NAME addresses: [GATEWAY_IP_ADDRESS] scope: samplescope
Sostituisci quanto segue:
GATEWAY_NAME
: il nome di questa istanzaGATEWAY_PORT_NUMBERS
: un elenco di numeri di porta per questo gateway, ad esempio[80,443]
CERTIFICATE_URLS
: un elenco di URL dei certificati SSLSUBNET_NAME
: il nome della subnet che contieneGATEWAY_IP_ADDRESS
GATEWAY_IP_ADDRESS
: un elenco facoltativo di indirizzi IP per le istanze di Secure Web Proxy all'interno delle sottoreti proxy create in precedenza nei passaggi di configurazione inizialeSe scegli di non elencare gli indirizzi IP, ometti il campo per fare in modo che il proxy web scelga un indirizzo IP per te.
Crea un'istanza Secure Web Proxy:
gcloud network-services gateways import GATEWAY_NAME \ --source=GATEWAY_FILE.yaml \ --location=REGION
Testa la connettività
Per verificare la connettività, utilizza il comando curl
da qualsiasi VM all'interno della rete Virtual Private Cloud (VPC):
curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
È previsto un errore 403 Forbidden
.
Crea e collega gli account di servizio alle risorse
Per creare e collegare gli account di servizio:
Creare regole di Secure Web Proxy
Per creare regole di Secure Web Proxy, segui questi passaggi:
Utilizza l'editor di testo che preferisci per creare un
RULE_FILE
.yaml file. SostituisciRULE_FILE
con il nome file scelto.Per consentire l'accesso a un URL dall'account di servizio scelto, aggiungi quanto segue al file YAML:
name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME description: RULE_DESCRIPTION enabled: true priority: RULE_PRIORITY sessionMatcher: CEL_EXPRESSION basicProfile: ALLOW
Sostituisci quanto segue:
RULE_NAME
: un nome per questa regolaRULE_DESCRIPTION
: una descrizione della regola che stai creandoRULE_PRIORITY
: la priorità per questa regola. Un numero inferiore corrisponde a una priorità più elevataCEL_EXPRESSION
: un'espressione comune Espressione lingua (CEL)Per ulteriori informazioni, consulta il riferimento linguistico del matcher CEL.
Ad esempio, per consentire l'accesso a
example.com
dalla risorsa con l'account di servizio desiderato collegato, aggiungi quanto segue al file YAML creato persessionMatcher
:sessionMatcher: "source.matchServiceAccount('SERVICE_ACCOUNT') && host() == 'example.com'"
Sostituisci
SERVICE_ACCOUNT
con il service account che vuoi consentire. Deve essere l'indirizzo email dell'account di servizio.
Importa le regole che hai creato:
gcloud network-security gateway-security-policies rules import RULE_NAME \ --source=RULE_FILE.yaml \ --location=REGION \ --gateway-security-policy=POLICY_NAME
Testa la connettività
Per verificare la connettività, utilizza il comando curl
della risorsa con
allegato SERVICE_ACCOUNT
:
curl -x https://IPv4_ADDRESS:443 http://example.com
--proxy-insecure
Sostituisci IPv4_ADDRESS
con l'indirizzo IPv4 del tuo
Istanza Secure Web Proxy.
Passaggi successivi
- Utilizzare un elenco di URL per creare criteri
- Assegnare indirizzi IP statici per il traffico in uscita