Richiamare con una richiesta HTTPS

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Puoi inviare richieste HTTPS da qualsiasi supporto in grado di eseguire richieste HTTPS per attivare un servizio ospitato su Cloud Run. Tieni presente che tutti i servizi Cloud Run hanno un URL HTTPS stabile.

Di seguito sono riportati alcuni casi d'uso:

  • API web RESTful personalizzata
  • Microservizio privato
  • Middleware HTTP o proxy inverso per le applicazioni web
  • Applicazione web preconfezionata

Creazione di servizi pubblici

La creazione di un servizio pubblico su Cloud Run richiede:

  • Accedere al servizio dalla rete Internet pubblica
  • Un URL destinato all'uso pubblico

Per rendere pubblico un servizio, impostalo in modo da consentire l'accesso non autenticato (pubblico) quando esegui il deployment o in qualsiasi momento dopo il deployment.

Puoi utilizzare l'URL stabile, assegnato automaticamente al primo deployment del servizio come URL pubblico su Cloud Run. Per determinare l'URL di un servizio di cui è stato eseguito il deployment:

gcloud run services describe SERVICE --format 'value(status.url)'

L'URL di un servizio Cloud Run ha il formato https://[TAG---]SERVICE_IDENTIFIER.run.app, dove TAG si riferisce al tag di traffico per la revisione che richiedi e SERVICE_IDENTIFIER è un identificatore stabile e univoco per un servizio Cloud Run. Non analizzare SERVICE_IDENTIFIER perché non ha un formato fisso e la logica per la generazione SERVICE_IDENTIFIER è soggetta a modifiche.

Puoi anche utilizzare il tuo dominio personalizzato che viene mappato al servizio. Fornisce automaticamente certificati SSL gestiti.

Cloud Run reindirizza tutte le richieste HTTP a HTTPS, ma termina il servizio TLS prima che raggiungano il tuo servizio web. Se il servizio genera risorse web riferite ad altre risorse web con URL non protetti (http://), la pagina potrebbe essere soggetta a avvisi o errori di contenuti misti. Utilizza il protocollo https per tutti gli URI web di riferimento o l'account per le istruzioni proxy nella richiesta HTTP, ad esempio l'intestazione HTTP X-Forwarded-Proto.

HTTP e HTTP/2

Per impostazione predefinita, Cloud Run esegue il downgrade delle richieste HTTP/2 a HTTP/1 quando tali richieste vengono inviate al container. Se vuoi impostare esplicitamente il servizio in modo che utilizzi HTTP/2 end-to-end, consulta Utilizzare HTTP/2.

Creazione di servizi privati

Per creare un servizio privato su Cloud Run è necessario limitare l'accesso al servizio.

Puoi limitare l'accesso al tuo servizio utilizzando IAM, come spiegato nella sezione Gestire l'accesso tramite IAM.

Il modo più semplice per gli sviluppatori per testare i servizi privati è utilizzare uno strumento come curl e passare un token di autenticazione nell'intestazione Authorization:

curl -H "Authorization: Bearer $(gcloud auth print-identity-token)" SERVICE_URL

Tieni presente che un servizio Cloud Run può chiamare un altro servizio Cloud Run con autenticazione da servizio a servizio.

Oltre ai metodi elencati sopra, puoi anche limitare l'accesso a un servizio utilizzando il meccanismo di autorizzazione e autenticazione a livello di applicazione, ad esempio utilizzando Identity Platform.

Codice di esempio che richiama richieste HTTP

Per esempi di codice che mostrano come ottenere un token ID ed effettuare una richiesta HTTP a un servizio privato, consulta l'argomento Autenticazione da servizio a servizio.

Utilizzare un middleware per migliorare il tuo servizio

I proxy HTTPS possono scaricare le funzionalità comuni da un servizio HTTP, ad esempio la memorizzazione nella cache, la convalida di richieste o l'autorizzazione. Per i microservizi, molti proxy HTTP fanno parte di una soluzione API Gateway o di un mesh di servizi come Istio.

I prodotti Google Cloud che puoi utilizzare per migliorare il tuo servizio Cloud Run includono: