Controllo accessi con restrizioni basate sul contesto

Dopo aver configurato l'istanza del servizio IBM® Key Protect, è possibile gestire l'accesso utilizzando il supporto di Key Protect per le restrizioni basate sul contesto(CBR).

Gestione delle impostazioni CBR

CBR consente di gestire l'accesso utente e di servizio alle risorse di rete, inclusi i riferimenti VPC (Virtual Private Cloud) e gli indirizzi IP (IP) di Internet Protocol (IP) che collegano le risorse Key Protect.

Per ulteriori informazioni sui servizi integrati con CBR, consulta Servizi integrati con restrizioni basate sul contesto.

Panoramica

Ci sono due parti nelle istruzioni per limitare l'accesso, Creazione di Zone e Creazione di regole, ciascuna con più passi. Innanzitutto creare una zona con i dettagli appropriati per le definizioni di rete o di risorse come le impostazioni VPC. Poi, allegare tale zona alla risorsa per limitare l'accesso. Ci sono due possibili percorsi per il raggiungimento di questo obiettivo: utilizzando una RESTful API o con limitazioni basate su Contesto.  Si noti che dopo aver creato o aggiornato una zona o una regola può richiedere qualche minuto per la modifica dell'effetto.

Le regole CBR non si applicano ai processi di provisioning o di defornitura.

Sulle Zone Di Rete

Creando delle zone di rete, è possibile creare un elenco di località consentite dove si originano una richiesta di accesso. Una serie di una o più posizioni di rete possono essere specificate da indirizzi IP come indirizzi singoli, intervalli o sottoreti e ID VPC. Dopo aver creato una zona di rete, è possibile aggiunarla a una regola.

Creare Zone di rete utilizzando l'API CBR

L'API supporta la definizione di zone di rete richiamando endpoint sia pubblici (https://cbr.cloud.ibm.com) che privati (https://private.cbr.cloud.ibm.com).

Utilizzando il percorso: "/v1/zones" con il metodo GET elencherà le zone. Tramite POST è possibile creare una nuova zona con le informazioni appropriate utilizzando il seguente esempio di formato del corpo di richiesta come guida:

{
  "name": "an example of a zone",
  "description": "this is an example of a zone",
  "account_id": "12ab34cd56ef78ab90cd12ef34ab56cd",
  "addresses": [
    {
      "type": "ipAddress",
      "value": "169.23.56.234"
    },
    {
      "type": "ipRange",
      "value": "169.23.22.0-169.23.22.255"
    },
    {
      "type": "subnet",
      "value": "192.0.2.0/24"
    },
    {
      "type": "vpc",
      "value": "crn:v1:bluemix:public:is:us-south:a/12ab34cd56ef78ab90cd12ef34ab56cd::vpc:r134-d98a1702-b39a-449a-86d4-ef8dbacf281e"
    }
  ],
  "excluded": [
    {
      "type": "ipAddress",
      "value": "169.23.22.127"
    }
  ]
}

È possibile determinare quali servizi sono disponibili controllando per destinazioni di riferimento.

Dopo la creazione di zone, è possibile anche aggiornare e eliminarli.

Creare Zone di rete utilizzando la UI CBR

Con i prerequisiti e i requisiti in essere, è possibile seguire i passaggi a creare zone nella UI.

Invece di creare una zona utilizzando gli input dell'UI, è possibile utilizzare il form code JSON per entrare direttamente JSON per creare una zona facendo clic su Invio come codice JSON.

Dopo la creazione di zone, è possibile anche aggiornare e eliminarli.

Informazioni sulle regole di rete

Dopo aver creato le tue zone, puoi allegare le zone alle tue risorse in rete creando delle regole.

Puoi scegliere tra i tipi di endpoint disponibili specifici per la tua topologia di rete quando si aggiungono risorse a una regola.

Creare regole di rete utilizzando l'API CBR

L'API supporta la definizione delle regole di rete e avrete bisogno delle informazioni dalla creazione della zona di rete per i prossimi passi.

Utilizzando il percorso: " /v1/rules ", con lo stesso endpoint delle zone di rete, il metodo GET elenca le regole attuali. Inviando un POST allo stesso percorso con il seguente formato di esempio che guida il proprio payload, è possibile creare nuove regole:

{
  "description": "this is an example of a rule",
  "resources": [
    {
      "attributes": [
        {
          "name": "accountId",
          "value": "12ab34cd56ef78ab90cd12ef34ab56cd"
        },
        {
          "name": "serviceName",
          "value": "kms"
        }
      ]
    }
  ],
  "contexts": [
    {
      "attributes": [
        {
          "name": "networkZoneId",
          "value": "65810ac762004f22ac19f8f8edf70a34"
        }
      ]
    }
  ]
}

Dopo aver creato delle regole, è possibile anche aggiornare e eliminarli.

Creare regole di rete utilizzando la UI CBR

Segui i passi per aggiungere risorse e contesti alla tua regola di rete, ma tieni a mente alcune limitazioni.

Quando si crea una restrizione basata sul contesto per il servizio IAM Access Groups, gli utenti che non soddisfano la regola non potranno visualizzare alcun gruppo nell'account, incluso il gruppo di accesso pubblico.

A differenza delle politiche IAM, le restrizioni basate sul contesto non assegnano l'accesso. Le restrizioni basate sul contesto verificano che una richiesta di accesso proviene da un contesto consentito che si configura. Inoltre, le regole potrebbero non prendere effetto immediatamente a causa della sincronizzazione e della disponibilità delle risorse. 

Dopo aver creato delle regole, è possibile anche aggiornare e eliminarli.

Passi successivi

Gli utenti che tentano di accedere alle risorse al di fuori delle zone definite riceveranno l'errore HTTP 401 quando sono state stabilite le regole appropriate.

Seguire la creazione o la modifica di eventuali zone o regole con test adeguati per garantire l'accesso e la disponibilità.

Se si vogliono standardizzare le restrizioni basate sul contesto in tutti gli ambienti, si può utilizzare il modulo Restrizioni basate sul contesto. Per una panoramica, vedere Terraform IBM Modules.