Utilizzo delle mappe chiave-valore

Questa pagina si applica ad Apigee e Apigee hybrid.

Visualizza la documentazione di Apigee Edge.

Questa sezione spiega come utilizzare le mappe chiave-valore.

Panoramica

A volte vuoi archiviare i dati per il recupero in fase di runtime, ovvero dati senza scadenza che non devono essere codificati nella logica del proxy API. Le mappe chiave-valore (KVM) sono ideali per questo scopo. Un KVM è una raccolta personalizzata di coppie di stringhe chiave/valore criptate.

Di seguito sono elencati tre casi d'uso generali per l'archiviazione dei dati nelle KVM:

  • Dati sulle sessioni utente:dati creati ed eliminati solo dal runtime; non puoi visualizzare o gestire le voci KVM al di fuori del runtime. Ad esempio, i contenuti del carrello degli acquisti.
  • Configurazione (ad esempio regole di routing e tabelle di ricerca): i dati che in genere vengono creati al di fuori del runtime, ma che vengono letti dal runtime. Questi dati vengono configurati utilizzando l'interfaccia utente o l'API, quindi resi disponibili al gateway (come variabili o contenuti di sola lettura).

    Ad esempio, hai un proxy API che deve chiamare un URL target (o callout di servizio) in un ambiente di test e un altro URL target in un ambiente di produzione. Invece di codificare gli URL nel proxy API, puoi chiedere di rilevare l'ambiente in cui si trova, eseguire il relativo criterio KeyValueMapOperations e recuperare l'URL target corretto dalla KVM appropriata.

    In un secondo momento, se uno o entrambi i target cambiano, devi semplicemente aggiornare le KVM con i nuovi URL. L'API proxy acquisisce i nuovi valori; non è necessario alcun nuovo dispiegamento.

  • Credenziali:memorizza credenziali, chiavi private o token, ad esempio token per servizi esterni, credenziali necessarie per generare token OAuth o chiavi private utilizzate in callout Java o JavaScript per la crittografia o la firma di token JWT (JSON Web Token). Anziché passare le credenziali, le chiavi o i token nella richiesta o codificarli nella logica del proxy, puoi archiviarli in un KVM e recuperarli dinamicamente nelle chiamate ai destinazioni che li richiedono.

Scoprirai altre situazioni in cui è utile la memorizzazione di coppie di stringhe chiave/valore. In generale, ti consigliamo di utilizzare le KVM quando:

  • Sezioni specifiche del codice richiedono valori diversi in fase di esecuzione.
  • I dati sensibili devono essere trasmessi senza essere codificati in modo rigido.
  • Vuoi memorizzare valori che non scadono, come potrebbe fare una cache.

In alcuni casi, i set di proprietà sono una buona alternativa ai KVM perché possono essere più facili da utilizzare. Per ulteriori informazioni, consulta la sezione Utilizzare i set di proprietà.

Informazioni sull'ambito KVM

L'ambito definisce dove è disponibile una KVM. Le KVM possono essere create nei seguenti ambiti:

Ambito Descrizione
proxy API Solo il proxy API può accedere alla KVM.
Ambiente Tutti i proxy API in un ambiente specifico possono accedere alla KVM. Ad esempio, potresti volere che i proxy API di cui è stato eseguito il deployment nell'ambiente prod non abbiano accesso alle KVM nell'ambiente test. Se vuoi che le stesse chiavi KVM siano disponibili in produzione, crea un KVM parallelo nell'ambito dell'ambiente prod.
Organizzazione Tutti i proxy API in tutti gli ambienti possono accedere alla KVM.

Informazioni sulla crittografia KVM

In Apigee, tutte le voci KVM per gli ambiti dell'organizzazione, dell'ambiente e del proxy API sono protette utilizzando la chiave Cloud KMS fornita durante il provisioning di un'organizzazione Apigee (vedi il campo runtimeDatabaseEncryptionKey nella risorsa Organization). Apigee utilizza AES256 come standard di crittografia.

In Apigee Hybrid, puoi fornire chiavi di crittografia separate per tutte le voci KVM per gli ambiti dell'organizzazione, dell'ambiente e del proxy API. Apigee accetta dimensioni di crittografia AES128, AES196 o AES256 come standard di crittografia.

Creazione di KVM

Crea le KVM come descritto nelle sezioni seguenti.

Apigee nella console Cloud

Per creare una nuova KVM (vuota) o visualizzare un elenco di KVM:

  1. Apri la UI di Apigee nella console Cloud in un browser.
  2. Nel riquadro di navigazione a sinistra, fai clic su Gestione > Ambienti.
  3. Seleziona l'ambiente che vuoi modificare dall'elenco degli ambienti disponibili.
  4. Fai clic sulla scheda Mappe chiave-valore nella pagina Dettagli ambiente.

    La pagina Mappe chiave-valore mostra un elenco delle MCV esistenti. Se non hai creato KVM, l'elenco è vuoto.

  5. Per creare una nuova mappa KVM (vuota), fai clic su + Crea mappa valori chiave.

    Viene visualizzata la finestra di dialogo Aggiungi mappa dei valori delle chiavi.

  6. Inserisci un nome per la KVM nel campo Nome mappatura valori chiave.

    Il nome può contenere solo lettere, numeri e trattini e non può superare i 255 caratteri. Non può includere spazi o altri caratteri speciali. Ad esempio: my-kvm-1

  7. Fai clic su Crea.

    Il nuovo KVM viene visualizzato nell'elenco.

Interfaccia utente Apigee classica

Per creare una nuova KVM (vuota) o visualizzare un elenco di KVM:

  1. Accedi all'interfaccia utente di Apigee.
  2. Seleziona Amministrazione > Ambienti > Mappe di valori chiave.
  3. Nell'elenco a discesa dell'ambiente, seleziona l'ambiente per cui vuoi creare una KVM.

    La pagina Mappe chiave-valore mostra un elenco delle MCV esistenti. Se non hai creato KVM, l'elenco è vuoto.

  4. Per creare una nuova mappa KVM (vuota), fai clic su +Mappa valori chiave.

    Viene visualizzata la finestra di dialogo Aggiungi mappa dei valori delle chiavi.

  5. Inserisci un nome per la KVM nel campo Nome.

    Il nome può contenere solo lettere, numeri e trattini. Non può includere spazi o altri caratteri speciali. Ad esempio: my-kvm-1

  6. Fai clic su Aggiungi.

    Il nuovo KVM viene visualizzato nell'elenco.

API Apigee

Utilizza le API Apigee per creare, elencare ed eliminare le KVM per i seguenti ambiti:

Criterio KVM

Per creare KVM in fase di esecuzione e aggiornarle nei proxy API, utilizza il criterio KeyValueMapOperations. Nel criterio, specifica il nome del KVM nell'attributo mapIdentifier dell'elemento principale.

L'elemento <InitialEntries> consente di creare e compilare un insieme di voci di riferimento in una nuova KVM non appena salvi il criterio nell'interfaccia utente o esegui il deployment del proxy API (se lo hai sviluppato offline). Se i valori cambiano nel criterio, quelli esistenti vengono sovrascritti. Le eventuali nuove coppie chiave/valore vengono aggiunte al KVM esistente insieme alle coppie chiave/valore esistenti.

L'elemento <Put> crea un nuovo KVM se non ne esiste già uno e una chiave con uno o più valori. Se la KVM esiste già, le coppie chiave/valore vengono aggiunte (o aggiornate se la chiave esiste già). Puoi utilizzare più elementi <Put> in un criterio KVM.

Debug

Quando utilizzi il criterio KeyValueMapOperations per recuperare i valori KVM criptati, fornisci il nome di una variabile per archiviare il valore. Poiché tutti i valori KVM sono criptati, devi aggiungere il prefisso private. al nome della variabile, in modo da impedire la visualizzazione delle coppie chiave/valore KVM nelle sessioni di debug.

Recupero delle KVM

Recupera le KVM utilizzando l'elemento <Get> del criterio KeyValueMapOperations. Poiché tutti i valori KVM sono criptati, aggiungere un prefisso private. al nome della variabile che conterrà il valore recuperato. Questo prefisso nasconde il valore dalle sessioni di debug durante il debugging dei proxy API. Per ulteriori informazioni, consulta Elemento<Get>.

Eliminazione delle KVM

Elimina le KVM come descritto nelle sezioni seguenti.

Apigee nella console Cloud

Per eliminare un KVM:

  1. Apri la UI di Apigee nella console Cloud in un browser.
  2. Nel riquadro di navigazione a sinistra, fai clic su Gestione > Ambienti.
  3. Seleziona il nome dell'ambiente che vuoi modificare dall'elenco degli ambienti disponibili.
  4. Fai clic sulla scheda Mappe chiave-valore nella pagina Dettagli ambiente.

    La pagina Mappe chiave-valore mostra un elenco delle MCV esistenti.

  5. Individua la riga del KVM che vuoi eliminare.
  6. Fai clic su nella colonna Azioni.
  7. Fai clic su Elimina mappa chiave-valore nella finestra di dialogo per confermare l'operazione.

    Il KVM viene eliminato e rimosso dall'elenco.

Interfaccia utente Apigee classica

Per eliminare un KVM:

  1. Accedi all'interfaccia utente di Apigee.
  2. Seleziona Amministrazione > Ambienti > Mappe di valori chiave.
  3. Nell'elenco a discesa dell'ambiente, seleziona l'ambiente per cui vuoi eliminare un KVM.

    La pagina Mappe chiave-valore mostra un elenco delle MCV esistenti.

  4. Posiziona il cursore sopra il KVM che vuoi eliminare.
  5. Fai clic su Elimina.
  6. Fai clic su Elimina per confermare l'operazione.

    Il KVM viene eliminato e rimosso dall'elenco.

API Apigee

Utilizza una delle seguenti API Apigee per eliminare un KVM in base al relativo ambito: