Sicurezza a livelli con restrizioni basate sul contesto

Riducete la superficie di attacco con restrizioni basate sul contesto. Aggiungete la posizione della rete, il tipo di endpoint e i requisiti MFA ai vostri criteri basati sull'identità per una gestione degli accessi a grana fine.

Le restrizioni basate sul contesto offrono ai proprietari degli account e agli amministratori la possibilità di definire e applicare le restrizioni di accesso alle risorse di IBM Cloud® in base ai criteri di una regola. I criteri includono la posizione di rete delle richieste di accesso, il tipo di endpoint da cui viene inviata la richiesta, il livello di autenticazione multifattoriale di un'identità e talvolta l'API a cui la richiesta cerca di accedere. Queste restrizioni si affiancano ai tradizionali criteri IAM, che si basano sull'identità, per fornire un ulteriore livello di protezione. Poiché sia i criteri IAM che le restrizioni basate sul contesto impongono l'accesso, le restrizioni basate sul contesto offrono protezione anche in presenza di credenziali compromesse o gestite in modo errato.

Un diagramma che mostra il funzionamento delle restrizioni basate sul contesto.
Un diagramma che mostra il funzionamento delle restrizioni basate sul contesto.

Per uno scenario di esempio sulla creazione di restrizioni basate sul contesto, seguite l'esercitazione su Come sfruttare le restrizioni basate sul contesto per proteggere le risorse.

Per ulteriori informazioni sull'implementazione delle restrizioni basate sul contesto nella vostra strategia di sicurezza, consultate il tutorial della soluzione Migliorare la sicurezza del cloud applicando restrizioni basate sul contesto.

Regole

Una regola associa una risorsa di IBM Cloud a un insieme di contesti:

  • La risorsa cloud è specificata da attributi di risorsa simili ai criteri di accesso IAM.
  • Un contesto è una combinazione di zone di rete e tipi di endpoint.

I contesti configurati definiscono il confine delle risorse associate.

Gli attributi delle risorse necessari nelle regole di restrizione basate sul contesto sono accountId e serviceName. Le regole devono essere definite in base a un account e a un servizio specifico.

Le regole di restrizione basate sul contesto vengono applicate secondo la seguente logica:

  • L'accesso viene concesso da una regola solo quando almeno uno dei contesti della regola consente l'accesso.
  • Se a una particolare risorsa sono applicabili più regole, l'accesso viene concesso solo quando tutte le regole applicabili consentono l'accesso.
  • Se nessuna regola è applicabile a una particolare risorsa, l'accesso è determinato esclusivamente dalle politiche IAM.

A differenza dei criteri IAM, le restrizioni basate sul contesto non assegnano l'accesso. Le restrizioni basate sul contesto verificano che una richiesta di accesso provenga da un contesto consentito configurato dall'utente.

L'interfaccia utilizzata per accedere a una risorsa, come la console, la CLI o l'API, non influisce sull'applicazione di una regola a quella risorsa. La regola si applica allo stesso modo su tutte le interfacce e si basa sull'indirizzo IP del client.

Applicazione delle regole

È possibile decidere come applicare una regola al momento della creazione e aggiornare l'applicazione della regola in qualsiasi momento.

Abilitato
Applicare la regola. A seconda del servizio selezionato, potrebbe essere disponibile il monitoraggio dei tentativi di accesso negati attraverso Activity Tracker Event Routing. Esaminate la documentazione di ciascun servizio per conoscere le modalità di integrazione con le restrizioni basate sul contesto.
Disabilitato
Non si applicano restrizioni alle risorse del vostro conto. Selezionare questa opzione se non si è pronti ad abilitare la regola.
Solo report
A seconda del servizio selezionato, è possibile monitorare l'impatto di una regola sull'accesso senza applicarla. Con la modalità solo rapporti, tutti i tentativi di accesso alle risorse dell'account vengono registrati in Activity Tracker Event Routing. Se disponibile, il monitoraggio è consigliato per 30 giorni prima di applicare una regola.

La modalità solo rapporti non è disponibile per tutti i servizi, pertanto è necessario consultare la documentazione di ciascun servizio per conoscere le modalità di integrazione con le restrizioni basate sul contesto.

È possibile monitorare l'impatto delle regole abilitate e di quelle relative ai soli rapporti. Per ulteriori informazioni, vedere Monitoraggio delle restrizioni basate sul contesto.

Definire l'ambito di applicazione di una regola

Definire le API che si desidera proteggere per restringere l'ambito delle restrizioni di una regola. In questo modo, è possibile specificare protezioni granulari per diverse API che hanno requisiti di accesso distinti.

Ad esempio, si può creare una regola che punta a un'API del piano dati in modo che sia accessibile solo da un cluster Kubernetes o da qualsiasi altro luogo in cui sia presente l'infrastruttura di calcolo. Quindi, è possibile creare una regola mirata all'API del piano di controllo e a tutte le API della piattaforma per proteggere le interazioni con la console cloud in modo che sia accessibile solo da dietro la VPN dell'organizzazione.

Solo alcuni servizi supportano la possibilità di eseguire lo scope di una regola tramite API.

Con alcuni servizi, è possibile limitare le azioni di tutte le API del servizio sulle risorse per impostazione predefinita, il che include tutte le API attuali e future che il servizio potrebbe supportare. Oppure, selezionare API specifiche. Ad esempio, Kubernetes ha API di servizio personalizzate a cui si può limitare l'accesso in base al contesto della richiesta. Esaminate la documentazione di ciascun servizio per saperne di più su come si integrano con le restrizioni basate sul contesto.

Alcuni servizi supportano la possibilità di estendere una regola per proteggere tutte le API della piattaforma, che comprendono tutte le API attuali e future della piattaforma che un servizio potrebbe supportare. L'aggiunta delle API della piattaforma all'ambito di una regola garantisce che le operazioni della piattaforma, come il provisioning delle risorse, la gestione delle credenziali dei servizi e l'aggiunta di tag, siano accessibili solo dalle posizioni definite dall'utente.

Le restrizioni basate sul contesto proteggono di default tutte le API del servizio e della piattaforma supportate dal servizio di destinazione.

Contesti

I contesti definiscono dove si può accedere alla risorsa. Un contesto è costituito dai tipi di endpoint consentiti e dalle zone di rete configurate.

  • Se un contesto include zone di rete, l'accesso viene concesso solo se la richiesta viene creata da una di queste zone.
  • Se un contesto include tipi di endpoint di servizio, l'accesso viene concesso solo quando la richiesta viene ricevuta tramite una connessione che corrisponde a uno di questi tipi.
  • Se un contesto include l'autenticazione multifattoriale (MFA), l'accesso viene concesso solo se l'identità richiedente ha un livello MFA uguale o superiore al livello MFA richiesto.
  • Se un contesto include più restrizioni, ad esempio sia zone che tipi di endpoint, tutte le restrizioni devono essere soddisfatte affinché l'accesso sia concesso.

Zona di rete

Una zona di rete rappresenta un elenco di indirizzi IP in cui viene creata una richiesta di accesso. Definisce un insieme di una o più posizioni di rete specificate dai seguenti attributi:

  • Indirizzi IP, che comprendono singoli indirizzi, intervalli o sottoreti.
  • VPC
  • Riferimenti ai servizi, che consentono l'accesso da altri servizi di IBM Cloud®.

Indirizzi IP

I clienti possono specificare gli indirizzi IP che conoscono e da cui vogliono poter inviare il traffico. Qualsiasi cosa al di fuori degli indirizzi IP specificati viene negata.

VPC

Se si dispone di applicazioni distribuite in una VPC che devono accedere a una risorsa limitata in base al contesto, è possibile includere gli indirizzi IP della VPC nella zona di rete. A tal fine, selezionare la VPC di destinazione nella zona di rete e aggiungere tale zona di rete alla regola. In questo modo, non è necessario trovare gli indirizzi IP utilizzati dalla VPC. Le risorse contattate vedono che la richiesta proviene da un insieme di indirizzi IP consentiti.

Riferimenti del servizio

Un riferimento di servizio rappresenta le posizioni di rete di un servizio o di un'istanza di servizio. L'inclusione di un riferimento a un servizio in una zona di rete aggiunge gli indirizzi IP associati al servizio all'elenco dei permessi, senza dover conoscere gli indirizzi IP sottostanti del servizio. I riferimenti ai servizi sono utili poiché le posizioni di rete dei servizi cloud sono sconosciute all'amministratore delle restrizioni basate sul contesto e possono cambiare nel tempo.

Di seguito è riportato un elenco di servizi che è possibile aggiungere a una zona di rete come riferimento di servizio:

Servizi compatibili con i riferimenti di servizio.
Servizio Tipo di servizio service_name
Tutti i servizi di Account Management Account Management iam-access-management
Servizio Gruppi di accesso IAM Gestione degli account iam-groups
Gestione degli utenti IAM Gestione degli account user-management
Activity Tracker Event Routing IAM-enabled logdnaat
App Configuration IAM-enabled apprapp
Servizio di gestione dei cataloghi IAM-enabled globalcatalog-collection
Cloud Block Storage for VPC IAM-enabled
Cloud Object Storage IAM-enabled cloud-object-storage
Code Engine IAM-enabled codeengine
Databases for DataStax IAM-enabled databases-for-cassandra
Databases for EnterpriseDB IAM-enabled databases-for-enterprisedb
Databases for Elasticsearch IAM-enabled databases-for-elasticsearch
Databases for etcd IAM-enabled databases-for-etcd
Databases for MongoDB IAM-enabled databases-for-mongodb
Databases for MySQL IAM-enabled databases-for-mysql
Databases for PostgreSQL IAM-enabled databases-for-postgresql
Databases for Redis IAM-enabled databases-for-redis
Direct Link IAM-enabled directlink
Event Notifications IAM-enabled event-notifications
Event Streams IAM-enabled messagehub
Kubernetes Service / Red Hat OpenShift IAM-enabled containers-kubernetes
Messages for RabbitMQ IAM-enabled messages-for-rabbitmq
Secrets Manager IAM-enabled secrets-manager
Servizi infrastrutturali VPC Abilitati per IAM
Schematics IAM-enabled schematics
Toolchain IAM-enabled toolchain
Watsonx.data IAM-enabled lakehouse

Nella tabella 1, Tutti i servizi di Account Management si riferisce al raggruppamento di servizi di tipo Account Management elencati nella tabella. Ad esempio, se esistono due servizi di Gestione clienti elencati nella tabella 1, Tutti i servizi di Gestione clienti include questi due servizi. Man mano che altri servizi di Gestione account diventano disponibili come riferimenti di servizio, le zone di rete che specificano Tutti i servizi di Gestione account come riferimento di servizio includono automaticamente i servizi di gestione account aggiunti di recente.

Per ulteriori informazioni sui servizi da aggiungere come riferimento per l'offerta di servizi a cui si mira in una regola, consultare la documentazione di ciascuna offerta di servizi.

Tipi di endpoint

Un tipo di endpoint rappresenta la connessione su cui viene ricevuta una richiesta di accesso. Corrisponde all'endpoint che riceve la connessione. È possibile consentire l'accesso da tutti i tipi di endpoint supportati dal servizio o da tipi specifici di endpoint del servizio.

I tre tipi di endpoint comuni sono i seguenti:

  • Gli endpoint pubblici possono accettare richieste da qualsiasi luogo.
  • Gli endpoint privati sono disponibili per la maggior parte delle richieste provenienti da IBM Cloud®.
  • Gli endpoint diretti sono utilizzati negli scenari Bring-Your-Own-IP, generalmente per le richieste che provengono da risorse all'interno di VPC.

Alcuni tipi di endpoint potrebbero non essere supportati dal servizio selezionato.

Per accedere agli endpoint privati virtuali, gli utenti della CLI devono accedere utilizzando il comando ibmcloud login -a private.cloud.ibm.com --vpc. Per ulteriori informazioni, vedere Creazione di un gateway endpoint privato(necessario per l'uso di VPC).

Autenticazione a più fattori

L'autenticazione a più fattori (MFA) richiede che le identità si autentichino utilizzando un altro fattore di autenticazione oltre all'ID e alla password. Impostando un requisito di livello MFA meno severo, si consente agli utenti che soddisfano o superano tale livello di autenticarsi. Ad esempio, se la regola richiede agli utenti di autenticarsi con MFA LEVEL1, gli utenti che hanno MFA LEVEL2 sono ancora conformi poiché LEVEL2 supera i criteri di sicurezza per LEVEL1. I seguenti livelli di AMF indicano il fattore AMF minimo per ciascun livello. Per ulteriori informazioni, vedere IBM Cloud Autenticazione a più fattori.

  • LEVEL1: MFA basato su e-mail
  • LEVEL2: TOTP MFA
  • LEVEL3: Chiave di sicurezza MFA

Oltre a LEVEL1, LEVEL2 e LEVEL3 MFA, la regola di restrizione basata sul contesto supporta anche il valore IAM_ACCOUNT_SETTING, il che significa che il valore MFA della regola corrisponde a qualsiasi requisito MFA definito dall'utente per l'account. In questo modo, qualsiasi modifica alle impostazioni MFA dell'account viene applicata automaticamente alla regola. Per ulteriori informazioni, vedere Opzioni MFA.

Se si seleziona un'opzione dalla sezione MFA per gli utenti con IBMid nelle impostazioni di autenticazione IAM, il valore MFA di IAM viene mappato a LEVEL2 MFA nelle restrizioni basate sul contesto. L'MFA viene applicato sia agli utenti federati che a quelli non federati, anche se è stato selezionato l'utente non federato.

Solo alcuni servizi supportano la possibilità di specificare l'MFA in una regola.

Requisiti di accesso

Per completare le azioni delle regole, è necessario che vi sia assegnato un criterio IAM sul servizio di destinazione. Per completare le azioni della zona di rete, è necessario assegnare un criterio IAM al servizio restrizioni basate sul contesto.

Per creare una restrizione basata sul contesto per un servizio, è necessario che al servizio contro cui si sta creando la regola sia assegnato un criterio IAM con il ruolo di amministratore. Per esempio, se si desidera creare una regola per proteggere un'istanza di Key Protect istanza, è necessario essere assegnati al ruolo di Amministratore del servizio e al ruolo di Visualizzatore o superiore del servizio di restrizione contestuale Key Protect e il ruolo Viewer o superiore sul servizio di restrizioni basate sul contesto.

Il ruolo Viewer del servizio restrizioni basate sul contesto autorizza ad aggiungere zone di rete alla regola.

Ruoli e azioni di restrizione basati sul contesto

Per gestire le zone di rete, è necessario assegnare un criterio IAM con un ruolo specifico per il servizio di gestione degli account delle restrizioni basate sul contesto. La tabella seguente mostra i ruoli di accesso e le azioni possibili per la gestione degli account.

Ruoli e azioni per il servizio di restrizioni basate sul contesto
Ruoli Azioni
Visualizzatore Visualizzazione delle zone di rete
Editor Visualizza le zone di rete

Crea le zone di rete

Aggiorna le zone di rete

Rimuovi le zone di rete

Amministratore Visualizza le zone di rete

Crea le zone di rete

Aggiorna le zone di rete

Rimuovi le zone di rete

Per ulteriori informazioni, vedere Azioni e ruoli per i servizi di gestione degli account.

È inoltre possibile utilizzare le zone di rete per limitare l'accesso a livello di account. Per impostare le limitazioni a livello di account utilizzando le zone di rete, vai alla console Gestisci > IAM > Impostazioni nella console IBM Cloud e immetti il nome della tua zona di rete.

Ruoli e azioni del servizio target

Per gestire le regole, è necessario essere assegnati a un criterio IAM con il ruolo di amministratore per il servizio contro cui si sta creando la regola. La tabella seguente mostra i ruoli di accesso e le azioni possibili per i servizi.

Ruoli e azioni di esempio per il servizio target
Ruoli Azioni
Visualizzatore Visualizza regole
Editor Visualizza regole
Amministratore Visualizza le regole

Crea regole

Aggiorna regole

Rimuovi regole

Servizi integrati con restrizioni basate sul contesto

I servizi specifici di IBM Cloud sono integrati con restrizioni basate sul contesto e solo questi servizi possono applicare regole alle loro risorse. Il modo in cui le regole si applicano ai singoli servizi è determinato dal servizio stesso, pertanto è necessario consultare la documentazione relativa a ciascun servizio per capire come si applicano le restrizioni basate sul contesto.

È possibile creare restrizioni basate sul contesto per i seguenti servizi se è stato concesso l'accesso corretto al servizio:

Servizi compatibili con le restrizioni basate sul contesto.
service Tipo di servizio Ambito di applicazione delle API service_name
Activity Tracker Event Routing Gestione account No atracker
App Configuration Abilitato IAM No apprapp
Servizio di gestione del catalogo Abilitato IAM globalcatalog-collection
IBM Cloud Logs Abilitato IAM No logs
IBM Cloud Monitoring Abilitato IAM No sysdig-monitor
Backup e ripristino Abilitato IAM backup-recovery
Nuvola Object Storage Abilitato IAM No cloud-object-storage
Code Engine Abilitato IAM No codeengine
Container Registry Abilitato IAM No container-registry
Restrizioni basate sul contesto Servizio Gestione account No context-based-restrictions
Databases for DataStax Abilitato IAM databases-for-cassandra
Databases for EnterpriseDB Abilitato IAM databases-for-enterprisedb
Databases for Elasticsearch Abilitato IAM databases-for-elasticsearch
Databases for etcd Abilitato IAM databases-for-etcd
Databases for MongoDB Abilitato IAM databases-for-mongodb
Databases for MySQL Abilitato IAM databases-for-mysql
Databases for PostgreSQL Abilitato IAM databases-for-postgresql
Databases for Redis Abilitato IAM databases-for-redis
Direct Link Abilitato IAM No directlink
DNS Services Abilitato IAM No dns-svcs
Enterprise Application Service Abilitato IAM No enterprise-app-java
Event Notifications Abilitato IAM No event-notifications
Event Streams Abilitato IAM No messagehub
Hyper Protect Crypto Services Abilitato IAM hs-crypto
Servizio di gruppi di accesso IAM Gestione account No iam-groups
Servizio di gestione accessi IAM Gestione account No iam-access-management
IAM Identity Service Gestione account No iam-identity
Gestione degli utenti IAM Gestione account No user-management
IBM Cloud® Virtual Private Cloud Abilitato IAM No is
Key Protect Abilitato IAM No kms
Kubernetes Service / Red Hat OpenShift Abilitato IAM containers-kubernetes
MQ Abilitato IAM mqcloud
Messages for RabbitMQ Abilitato IAM messages-for-rabbitmq
Schematics Abilitato IAM No schematics
Secrets Manager Abilitato IAM No secrets-manager
IBM Cloud Security and Compliance Center Workload Protection Abilitato IAM No sysdig-secure
Servizio di etichettatura Gestione account No ghost-tags
Transit Gateway Abilitato IAM No transit
Watsonx.data Abilitato IAM No lakehouse

Le restrizioni basate sul contesto definite per i servizi abilitati IAM non si applicano alle azioni della piattaforma come la creazione o l'eliminazione. Per ulteriori informazioni, vedere Ruoli e azioni IAM.

Controllate regolarmente quali servizi vengono aggiunti man mano che altri servizi si integrano con le restrizioni basate sul contesto.

Limiti di restrizione basati sul contesto

La tabella seguente elenca i limiti massimi per le restrizioni basate sul contesto. Questi limiti si applicano a qualsiasi utente che possa creare regole di restrizione basate sul contesto o zone di rete. Per ulteriori informazioni, vedere Cosa sono le restrizioni basate sul contesto.

Se avete un caso d'uso specifico che richiede un limite esteso, potete richiedere un aumento. Per ulteriori informazioni, vedere Aumento dei limiti del conto.

Limiti di restrizione basati sul contesto
Risorsa Max
Regole di restrizione basate sul contesto per account [1] 4020
Zone di rete per account 500
Indirizzi IP per zona di rete 1000
Indirizzi IP per regola 1000

Una regola di restrizione basata sul contesto che include più zone di rete può avere un massimo di 1000 indirizzi IP associati indirettamente. Ad esempio, in una regola che include due zone di rete, una delle zone potrebbe avere 800 indirizzi IP e l'altra un massimo di 200 indirizzi IP.

Se si desidera controllare il numero di regole nel proprio account, vedere Visualizzazione del numero totale di regole per account. Per richiedere un aumento del limite dell'account, vedere Richiesta di aumento del limite condiviso di una policy e di una regola.

Eventuale coerenza

Le restrizioni basate sul contesto seguono uno schema coerente, comune a molti servizi cloud-native. Di conseguenza, le restrizioni basate sul contesto rimangono altamente disponibili e performanti in più regioni globali. Le modifiche apportate alle regole di restrizione basate sul contesto e alle zone di rete vengono registrate e propagate in tutto il mondo. Le modifiche all'accesso potrebbero non avere effetto fino al completamento del processo di propagazione, di solito entro pochi minuti.


  1. I criteri IAM e le regole di restrizione basate sul contesto condividono un limite combinato di 4020. ↩︎