Limita le suite di crittografia TLS
Questa pagina descrive come impedire l'accesso alle risorse negando le richieste effettuate utilizzando determinate suite di crittografia TLS (Transport Layer Security) meno sicure. Google Cloud
Panoramica
Google Cloud supporta più suite di crittografia TLS. Per soddisfare i requisiti di sicurezza o conformità, potresti voler rifiutare le richieste dei client che utilizzano suite di crittografia TLS meno sicure.
Questa funzionalità è fornita dal gcp.restrictTLSCipherSuites
vincolo del criterio dell'organizzazione.
Il vincolo può essere applicato a organizzazioni, cartelle o progetti nella
gerarchia delle risorse.
Puoi utilizzare il vincolo gcp.restrictTLSCipherSuites
come lista consentita
o come lista bloccata:
- Elenco consentito: Consente un insieme specifico di suite di crittografia. Tutte le altre richieste vengono rifiutate.
- Elenco di negazione: Nega un insieme specifico di suite di crittografia. Tutti gli altri sono consentiti.
A causa del comportamento di valutazione della gerarchia dei criteri dell'organizzazione, il vincolo Limita suite di crittografia TLS si applica al nodo della risorsa specificato e a tutti i relativi elementi secondari. Ad esempio, se consenti solo determinate suite di crittografia TLS per un'organizzazione, queste si applicano anche a tutte le cartelle e i progetti (secondari) che derivano da quell'organizzazione.
Prima di iniziare
Per ottenere le autorizzazioni necessarie per impostare, modificare o eliminare le policy dell'organizzazione, chiedi all'amministratore di concederti il ruolo IAM Amministratore policy dell'organizzazione (roles/orgpolicy.policyAdmin
) nell'organizzazione.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Impostazione del criterio dell'organizzazione
Il vincolo Limita le suite di crittografia TLS è un tipo di vincolo di elenco. Puoi aggiungere e
rimuovere le suite di crittografia dagli elenchi allowed_values
o denied_values
di un
vincolo Limita le suite di crittografia TLS. Per evitare che le policy dell'organizzazione siano troppo
restrittive e per semplificare la gestione delle policy, utilizza i
gruppi di valori. I gruppi di valori sono suite di crittografia TLS consigliate e curate da Google.
Console
Apri la pagina Policy dell'organizzazione nella console Google Cloud .
Seleziona il selettore del progetto nella parte superiore della pagina.
Nel selettore di progetti, seleziona la risorsa per cui vuoi impostare il criterio dell'organizzazione.
Seleziona il vincolo Limita suite di crittografia TLS dall'elenco nella pagina Criteri organizzazione.
Per aggiornare la policy dell'organizzazione per questa risorsa, fai clic su Gestisci policy.
Nella pagina Modifica, seleziona Personalizza.
In Applicazione criterio, seleziona un'opzione di applicazione:
Per unire e valutare insieme le policy della tua organizzazione, seleziona Unisci a principale. Per ulteriori informazioni sull'ereditarietà e sulla gerarchia delle risorse, vedi Informazioni sulla valutazione della gerarchia.
Per eseguire l'override delle policy ereditate da una risorsa padre, seleziona Sostituisci.
Fai clic su Aggiungi regola.
In Valori policy, seleziona Personalizzato.
In Tipo di criterio, seleziona Consenti per creare un elenco di suite di crittografia consentite o seleziona Rifiuta per creare un elenco di suite di crittografia rifiutate.
In Valori personalizzati, inserisci il prefisso
in:
e una stringa di gruppo di valori, poi premi Invio.Ad esempio,
in:NIST-800-52-recommended-ciphers
. Puoi inserire più stringhe di gruppi di valori facendo clic su Aggiungi valore.Puoi anche inserire stringhe di suite di crittografia specifiche utilizzando il prefisso
is:
. Per un elenco dei valori supportati, consulta Suite di crittografia supportate.
Per applicare il criterio, fai clic su Imposta criterio.
gcloud
Per creare una policy dell'organizzazione che applichi il vincolo Limita suite di crittografia TLS, crea un file YAML della policy che faccia riferimento al vincolo:
constraint: constraints/gcp.restrictTLSCipherSuites
listPolicy:
allowedValues:
- in:CNSA-2.0-recommended-ciphers
- is:TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
Per applicare la policy dell'organizzazione contenente il vincolo, esegui questo comando:
gcloud resource-manager org-policies set-policy \ --RESOURCE_TYPE RESOURCE_ID \ POLICY_PATH
Sostituisci quanto segue:
RESOURCE_TYPE
conorganization
,folder
oproject
.RESOURCE_ID
con l'ID organizzazione, l'ID cartella, l'ID progetto o il numero di progetto.POLICY_PATH
con il percorso completo del file YAML contenente il criterio dell'organizzazione.
Viene restituita una risposta con i risultati della nuova norma dell'organizzazione:
constraint: constraints/gcp.restrictTLSCipherSuites etag: COS9qr0GELii6o0C listPolicy: allowedValues: - in:CNSA-2.0-recommended-ciphers - is:TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA updateTime: '2025-02-11T00:50:44.565875Z'
Gruppi di valori
I gruppi di valori sono raccolte di suite di crittografia curate da Google per fornire un modo più semplice per definire le suite di crittografia TLS preferite o consigliate. I gruppi di valori includono più suite di crittografia e vengono espansi nel tempo da Google. Non è necessario modificare i criteri dell'organizzazione per adattarsi alle nuove suite di crittografia.
Per utilizzare i gruppi di valori nelle policy dell'organizzazione, aggiungi il prefisso
in:
alle voci. Per ulteriori informazioni sull'utilizzo dei prefissi dei valori, consulta la sezione
Utilizzare i vincoli.
I nomi dei gruppi di valori vengono convalidati nella chiamata per impostare i criteri dell'organizzazione.
L'utilizzo di un nome di gruppo non valido causerà l'errore dell'impostazione del criterio.
La seguente tabella contiene l'elenco attuale dei gruppi disponibili:
Gruppo | Dettagli | Membri diretti |
---|---|---|
CNSA-2.0-recommended-ciphers | Cipher consigliati da CNSA 2.0 supportati da Google Cloud:in:CNSA-2.0-recommended-ciphers |
Valori:
|
NIST-800-52-recommended-ciphers | Cifrari consigliati da NIST SP 800-52 supportati da Google Cloud:in:NIST-800-52-recommended-ciphers |
Valori:
|
Suite di crittografia supportate
Questo è l'elenco delle suite di crittografia supportate da Google Cloud.
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_3DES_EDE_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_AES_128_GCM_SHA256
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
Messaggio di errore
I servizi che supportano il vincolo Limita suite di crittografia TLS negano le richieste che lo violano.
Esempio di messaggio di errore
Il messaggio di errore ha un formato simile al seguente esempio:
Request is disallowed by organization's constraints/gcp.restrictTLSCipherSuites constraint for 'projects/PROJECT_NUMBER'. Access to service 'SERVICE_NAME.googleapis.com' attempted with a disallowed TLS Cipher Suite: 'TLS_Cipher_Suite_X` To access this resource, please use an allowed TLS Cipher Suite.
Questo output include i seguenti valori:
PROJECT_NUMBER
: il numero di progetto che ospita la risorsa a cui si fa riferimento nel comando precedente.SERVICE_NAME
: il nome del servizio incluso nell'ambito bloccato dalla policy Limita suite di crittografia TLS.TLS_Cipher_Suite_X
: la suite di crittografia TLS utilizzata nella richiesta.
Esempio di audit log di Cloud
Viene generata anche una voce di log di controllo per ulteriori monitoraggi, avvisi o debug. La voce di log di controllo è simile al seguente esempio:
{ logName: "projects/my-project-number/logs/cloudaudit.googleapis.com%2Fpolicy" protoPayload: { @type: "type.googleapis.com/google.cloud.audit.AuditLog" status: { code: 7 message: "Request is disallowed by organization's TLS Cipher Suite Restriction Org Policy for 'projects/my-project-number'. Attempting to use service 'bigquery.googleapis.com' with a disallowed TLS Cipher Suite: 'TLS_Cipher_Suite_X`." } serviceName: "bigquery.googleapis.com" methodName: "google.cloud.bigquery.v2.TableDataService.InsertAll" resourceName: "projects/my-project-number" authenticationInfo: { principalEmail: "user_or_service_account@example.com" } } requestMetadata: { callerIp: "123.123.123.123" } policyViolationInfo: { orgPolicyViolationInfo: { violationInfo: [ { constraint: "constraints/gcp.restrictTlsCipherSuites" errorMessage: "TLS Cipher Suite Restriction Org Policy is violated" policyType: "LIST_CONSTRAINT" } ] } } resource: { type: "audited_resource" labels: { project_id: "my-project-number" method: "google.cloud.bigquery.v2.TableDataService.InsertAll" service: "bigquery.googleapis.com" } } severity: "ERROR" timestamp: "2023-10-27T19:27:24.633477924Z" receiveTimestamp: "2023-10-27T19:27:25.071941737Z" insertId "42" }
Testare la policy
Puoi testare il vincolo di policy di limitazione della crittografia TLS per qualsiasi
servizio incluso nell'ambito. Il seguente comando curl
di esempio
convalida le suite di crittografia TLS per un portachiavi Cloud Key Management Service.
curl --ciphers TLS_CIPHER_SUITE --tls_max 1.2 -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/global/keyRings" --verbose
Sostituisci le seguenti variabili:
TLS_CIPHER_SUITE
: il nome della suite di crittografia TLS nella convenzione di denominazione OpenSSL, ad esempioECDHE-ECDSA-AES128-SHA
, che è il nome OpenSSL perTLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
.PROJECT_ID
: Nome del progetto contenente il portachiavi
La seguente richiesta curl
di esempio mostra PROJECT_ID impostato su
my-project-id
e TLS_CIPHER_SUITE impostato su ECDHE-ECDSA-AES128-SHA
:
curl --ciphers ECDHE-ECDSA-AES128-SHA --tls-max 1.2 \ GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://cloudkms.googleapis.com/v1/projects/my-project-id/locations/global/keyRings" --verbose
Se il criterio dell'organizzazione per "my-project-id" è configurato per negare
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
, qualsiasi tentativo di accedere alle risorse
con la crittografia nel progetto con limitazioni dei criteri in questo comando di esempio non va a buon fine.
Viene restituito un messaggio di errore simile al seguente esempio che descrive il
motivo di questo errore.
Request is disallowed by organization's constraints/gcp.restrictTLSCipherSuites constraint for 'projects/my-project-id'. Access to service cloudkms.googleapis.com attempted with a disallowed TLS Cipher Suite: `TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA`. To access this resource, please use an allowed TLS Cipher Suite.
Crea una policy dell'organizzazione in modalità dry run
Una policy dell'organizzazione in modalità dry run è un tipo di policy dell'organizzazione in cui le violazioni della policy vengono registrate nel log di controllo, ma le azioni che violano la policy non vengono negate. Puoi creare una policy dell'organizzazione in modalità di prova utilizzando il vincolo di limitazione delle suite di crittografia TLS per monitorare l'impatto sulla tua organizzazione prima di applicare la policy live. Per ulteriori informazioni, vedi Creare una policy dell'organizzazione in modalità di prova.
Servizi supportati
I seguenti servizi supportano Limita le suite di crittografia TLS. Il vincolo si applica a tutte le varianti dell'endpoint API, inclusi gli endpoint globali, locali e regionali. Per saperne di più, consulta la pagina Tipi di endpoint API.
Prodotto | endpoint API |
---|---|
API Gateway |
apigateway.googleapis.com |
Chiavi API |
apikeys.googleapis.com |
Gestore contesto accesso |
accesscontextmanager.googleapis.com |
Apigee |
apigee.googleapis.com |
Hub API Apigee |
apihub.googleapis.com |
API Apigee API Management |
apim.googleapis.com |
API Apigee Connect |
apigeeconnect.googleapis.com |
API Apigee portal |
apigeeportal.googleapis.com |
API Apigee Registry |
apigeeregistry.googleapis.com |
API App Config Manager |
appconfigmanager.googleapis.com |
App Hub |
apphub.googleapis.com |
App Design Center |
designcenter.googleapis.com |
Application Integration |
integrations.googleapis.com |
Artifact Analysis |
containeranalysis.googleapis.com ondemandscanning.googleapis.com |
Artifact Registry |
artifactregistry.googleapis.com |
Software open source Assured |
assuredoss.googleapis.com |
Assured Workloads |
assuredworkloads.googleapis.com |
Audit Manager |
auditmanager.googleapis.com |
API Authorization Toolkit |
authztoolkit.googleapis.com |
Batch |
batch.googleapis.com |
Chrome Enterprise Premium |
beyondcorp.googleapis.com |
BigLake |
biglake.googleapis.com |
BigQuery |
bigquery.googleapis.com |
BigQuery Connections |
bigqueryconnection.googleapis.com |
BigQuery Data Policy |
bigquerydatapolicy.googleapis.com |
BigQuery Data Transfer |
bigquerydatatransfer.googleapis.com |
Migrazione BigQuery |
bigquerymigration.googleapis.com |
BigQuery Reservation |
bigqueryreservation.googleapis.com |
API BigQuery Saved Query |
bigquery-sq.googleapis.com |
BigQuery Storage |
bigquerystorage.googleapis.com |
Bigtable |
bigtable.googleapis.com bigtableadmin.googleapis.com |
Autorizzazione binaria |
binaryauthorization.googleapis.com |
Blockchain Analytics |
blockchain.googleapis.com |
Blockchain Node Engine |
blockchainnodeengine.googleapis.com |
Blockchain Validator Manager |
blockchainvalidatormanager.googleapis.com |
Strumento di pianificazione della capacità |
capacityplanner.googleapis.com |
Certificate Authority Service |
privateca.googleapis.com |
Certificate Manager |
certificatemanager.googleapis.com |
Cloud Asset Inventory |
cloudasset.googleapis.com |
Cloud Build |
cloudbuild.googleapis.com |
Cloud CDN |
compute.googleapis.com |
API Cloud Commerce Producer |
cloudcommerceproducer.googleapis.com |
Cloud Composer |
composer.googleapis.com |
API Cloud Controls Partner |
cloudcontrolspartner.googleapis.com |
Cloud DNS |
dns.googleapis.com |
Cloud Data Fusion |
datafusion.googleapis.com |
Cloud Deployment Manager |
runtimeconfig.googleapis.com deploymentmanager.googleapis.com |
Cloud Domains |
domains.googleapis.com |
API Cloud Healthcare |
healthcare.googleapis.com |
Cloud Interconnect |
compute.googleapis.com |
Cloud Intrusion Detection System |
ids.googleapis.com |
Cloud Key Management Service |
cloudkms.googleapis.com |
Cloud Life Sciences |
lifesciences.googleapis.com |
Cloud Load Balancing |
compute.googleapis.com |
Cloud Logging |
logging.googleapis.com |
Cloud Monitoring |
monitoring.googleapis.com |
Cloud NAT |
compute.googleapis.com |
API Cloud Natural Language |
language.googleapis.com |
Cloud Next Generation Firewall Essentials |
compute.googleapis.com networksecurity.googleapis.com |
Cloud Next Generation Firewall Standard |
compute.googleapis.com networksecurity.googleapis.com |
API Cloud OS Login |
oslogin.googleapis.com |
Router Cloud |
compute.googleapis.com |
Cloud Run |
run.googleapis.com |
Cloud SQL |
sqladmin.googleapis.com |
Cloud Service Mesh |
meshconfig.googleapis.com networksecurity.googleapis.com |
API Cloud Support |
cloudsupport.googleapis.com |
API Cloud Tool Results |
toolresults.googleapis.com |
Cloud VPN |
compute.googleapis.com |
Cloud Workstations |
workstations.googleapis.com |
API Commerce Agreement Publishing |
commerceagreementpublishing.googleapis.com |
API Commerce Business Enablement |
commercebusinessenablement.googleapis.com |
API Commerce Price Management |
commercepricemanagement.googleapis.com |
Compute Engine |
compute.googleapis.com |
Confidential Computing |
confidentialcomputing.googleapis.com |
Connetti |
gkeconnect.googleapis.com |
Connettere il gateway |
connectgateway.googleapis.com |
API Contact Center AI Platform |
contactcenteraiplatform.googleapis.com |
Container Threat Detection |
containerthreatdetection.googleapis.com |
API Content Warehouse |
contentwarehouse.googleapis.com |
API Continuous Validation |
continuousvalidation.googleapis.com |
API Data Labeling |
datalabeling.googleapis.com |
API Data Security Posture Management |
dspm.googleapis.com |
Database Migration Service |
datamigration.googleapis.com |
Dataflow |
dataflow.googleapis.com |
Dataplex Universal Catalog |
dataplex.googleapis.com datalineage.googleapis.com |
Dataproc on GDC |
dataprocgdc.googleapis.com |
Google Distributed Cloud |
opsconfigmonitoring.googleapis.com gdcvmmanager.googleapis.com gdchardwaremanagement.googleapis.com |
API Distributed Cloud Edge Container |
edgecontainer.googleapis.com |
API Distributed Cloud Edge Network |
edgenetwork.googleapis.com |
Enterprise Knowledge Graph |
enterpriseknowledgegraph.googleapis.com |
Error Reporting |
clouderrorreporting.googleapis.com |
Contatti fondamentali |
essentialcontacts.googleapis.com |
Eventarc |
eventarc.googleapis.com |
Filestore |
file.googleapis.com |
API Financial Services |
financialservices.googleapis.com |
Firebase App Hosting |
firebaseapphosting.googleapis.com |
Firebase Data Connect |
firebasedataconnect.googleapis.com |
Regole di sicurezza Firebase |
firebaserules.googleapis.com |
GKE Dataplane Management |
gkedataplanemanagement.googleapis.com |
API GKE Enterprise Edge |
anthosedge.googleapis.com |
Hub (parco risorse) |
gkehub.googleapis.com |
GKE Multi-cloud |
gkemulticloud.googleapis.com |
API GKE On-Prem |
gkeonprem.googleapis.com |
API Gemini for Google Cloud |
cloudaicompanion.googleapis.com |
Google Cloud API |
cloud.googleapis.com |
Google Cloud Armor |
compute.googleapis.com |
Google Cloud Migration Center |
migrationcenter.googleapis.com |
Google Cloud Observability |
stackdriver.googleapis.com |
Google Kubernetes Engine |
container.googleapis.com configdelivery.googleapis.com |
Google Security Operations SIEM |
chronicle.googleapis.com chronicleservicemanager.googleapis.com |
API Google Security Operations Partner |
chroniclepartner.googleapis.com |
Componenti aggiuntivi di Google Workspace |
gsuiteaddons.googleapis.com |
Identity and Access Management |
iam.googleapis.com |
Identity-Aware Proxy |
iap.googleapis.com |
Immersive Stream |
stream.googleapis.com |
Infrastructure Manager |
config.googleapis.com |
Integration Connectors |
connectors.googleapis.com |
KRM API Hosting |
krmapihosting.googleapis.com |
API Live Stream |
livestream.googleapis.com |
Looker Studio |
datastudio.googleapis.com |
BigQuery Engine per Apache Flink |
managedflink.googleapis.com |
API Managed Kafka |
managedkafka.googleapis.com |
Gestione del servizio |
servicemanagement.googleapis.com |
Media Asset Manager |
mediaasset.googleapis.com |
Memorystore for Memcached |
memcache.googleapis.com |
Memorystore for Redis |
redis.googleapis.com |
API Message Streams |
messagestreams.googleapis.com |
API Microservices |
microservices.googleapis.com |
Model Armor |
modelarmor.googleapis.com |
Network Connectivity Center |
networkconnectivity.googleapis.com |
Network Intelligence Center |
networkmanagement.googleapis.com |
Network Service Tiers |
compute.googleapis.com |
Persistent Disk |
compute.googleapis.com |
Oracle Database @ Google Cloud |
oracledatabase.googleapis.com |
Parallelstore |
parallelstore.googleapis.com |
Analizzatore criteri |
policyanalyzer.googleapis.com |
Policy Troubleshooter |
policytroubleshooter.googleapis.com |
Progressive Rollout |
progressiverollout.googleapis.com |
Pub/Sub |
pubsub.googleapis.com |
Public Certificate Authority |
publicca.googleapis.com |
Motore per suggerimenti |
recommender.googleapis.com |
Remote Build Execution |
remotebuildexecution.googleapis.com |
API Retail |
retail.googleapis.com |
Cyber Insurance Hub |
riskmanager.googleapis.com |
API SaaS Service Management |
saasservicemgmt.googleapis.com |
API SecLM |
seclm.googleapis.com |
Secret Manager |
secretmanager.googleapis.com |
Security Command Center |
securitycenter.googleapis.com securitycentermanagement.googleapis.com securityposture.googleapis.com |
Cloud Data Loss Prevention |
dlp.googleapis.com |
API Service Account Credentials |
iamcredentials.googleapis.com |
Service Directory |
servicedirectory.googleapis.com |
Networking di servizi |
servicenetworking.googleapis.com |
Spanner |
spanner.googleapis.com |
Speaker ID |
speakerid.googleapis.com |
Speech-to-Text |
speech.googleapis.com |
Storage Insights |
storageinsights.googleapis.com |
Storage Transfer Service |
storagebatchoperations.googleapis.com |
Text-to-Speech |
texttospeech.googleapis.com |
API Timeseries Insights |
timeseriesinsights.googleapis.com |
API Transcoder |
transcoder.googleapis.com |
Transfer Appliance |
transferappliance.googleapis.com |
VM Manager |
osconfig.googleapis.com |
API Vertex AI |
aiplatform.googleapis.com |
Vertex AI Workbench |
notebooks.googleapis.com |
Vertex AI in Firebase |
firebasevertexai.googleapis.com |
Virtual Private Cloud (VPC) |
compute.googleapis.com |
API Video Search |
cloudvideosearch.googleapis.com |
API Video Stitcher |
videostitcher.googleapis.com |
Web Risk |
webrisk.googleapis.com |
Web Security Scanner |
websecurityscanner.googleapis.com |
Workflow |
workflows.googleapis.com |
API Workload Certificate |
workloadcertificate.googleapis.com |
Servizi non supportati
Il vincolo della policy dell'organizzazione Limita suite di crittografia TLS non è applicabile ai seguenti servizi:
- App Engine (
*.appspot.com
) - Funzioni Cloud Run (
*.cloudfunctions.net
), - Cloud Run (
*.run.app
) - Private Service Connect
- Domini personalizzati
Per limitare le suite di crittografia TLS per questi servizi, utilizza Cloud Load Balancing insieme alla policy di sicurezza SSL.
Google Cloud preferenza della suite di crittografia
Gli endpoint per i servizi supportati danno la priorità ad AES-256 rispetto ad AES-128 e a ChaCha20. I client che supportano AES-256 dovrebbero negoziarlo correttamente senza richiedere alcuna modifica alla configurazione.