Creare coppie di chiave-valore

Completato

Configurazione app di Azure archivia i dati di configurazione sotto forma di coppie chiave-valore.

Chiavi

La chiavi fungono da nome per le coppie chiave-valore e vengono usate per archiviare e recuperare i valori corrispondenti. In genere le chiavi vengono organizzate in uno spazio dei nomi gerarchico usando un delimitatore di caratteri, ad esempio / o :. Usare la convenzione più indicata per l'applicazione. La configurazione dell'app considera le chiavi come un tutt'uno. Non analizza le chiavi per determinare come sono strutturati i relativi nomi o per applicare qualsiasi regola su di esse.

Ecco un esempio di nomi di chiave strutturati in una gerarchia basata sui servizi componenti:

AppName:Service1:ApiEndpoint
AppName:Service2:ApiEndpoint

L'uso dei dati di configurazione all'interno dei framework dell'applicazione può imporre schemi di denominazione specifici per i valori chiave. Ad esempio, il framework Spring Cloud di Java definisce le risorse Environment che forniscono impostazioni a un'applicazione Spring. Queste risorse sono parametrizzate dalle variabili che includono il nome dell'applicazione e il profilo. Le chiavi per Spring Cloud relative ai dati di configurazione iniziano in genere con questi due elementi, separati da un delimitatore.

Le chiavi archiviate in Configurazione delle App sono stringhe con distinzione tra maiuscole e minuscole, basate su Unicode. Le chiavi app1 e App1 sono distinte in un archivio di Configurazione app. Tenere presente questo aspetto quando si usano le impostazioni di configurazione all'interno di un'applicazione, perché alcuni framework gestiscono le chiavi di configurazione senza fare distinzione tra maiuscole e minuscole.

Nei nomi delle chiavi immessi in Configurazione app è possibile usare qualsiasi carattere Unicode, ad eccezione di *, , e \. Questi caratteri sono riservati. Se è necessario includere un carattere riservato, è necessario farlo precedere da un carattere di escape usando \{Reserved Character}. Per una coppia chiave-valore è previsto un limite di dimensioni di 10.000 caratteri. Questo limite include tutti i caratteri della chiave, il relativo valore e tutti gli attributi facoltativi associati. Entro questo limite è possibile avere molti livelli gerarchici per le chiavi.

Progettare gli spazi dei nomi delle chiavi

Esistono due approcci generali all'assegnazione di nomi alle chiavi usate per i dati di configurazione: flat o gerarchico. Questi approcci sono simili dal punto di vista dell'utilizzo dell'applicazione, ma la denominazione gerarchica offre diversi vantaggi:

  • È più facile da leggere. Anziché una lunga sequenza di caratteri, i delimitatori in un nome di chiave gerarchico funzionano come gli spazi in una frase.
  • Più facile da gestire. Una gerarchia di nomi di chiavi rappresenta gruppi logici di dati di configurazione.
  • È più facile da usare. È più semplice scrivere una query che corrisponda ai criteri delle chiavi in una struttura gerarchica e che recuperi solo una parte dei dati di configurazione.

Chiavi di etichetta

I valori chiave in Configurazione app possono includere facoltativamente un attributo etichetta. Le etichette consentono di distinguere i valori di chiave con la stessa chiave. Una chiave app1 con le etichette A e B corrisponde a due chiavi distinte in un archivio di Configurazione app. Per impostazione predefinita, un valore chiave non ha alcuna etichetta. Per fare riferimento in modo esplicito a un valore chiave senza un'etichetta, usare \0 (URL codificato come %00).

L'etichetta fornisce un modo pratico per creare varianti di una chiave. Un uso comune delle etichette consiste nello specificare più ambienti per la stessa chiave:

Key = AppName:DbEndpoint & Label = Test
Key = AppName:DbEndpoint & Label = Staging
Key = AppName:DbEndpoint & Label = Production

Valori delle chiavi di versione

Configurazione app non assegna versioni ai valori delle chiavi automaticamente quando vengono modificati. Usare le etichette come modo per creare più versioni di un valore chiave. È ad esempio possibile immettere un numero di versione dell'applicazione o un ID commit di Git nelle etichette per identificare le coppie chiave-valore associate a una particolare build software.

Interrogare i valori chiave

Ogni coppia chiave-valore viene identificata in modo univoco dalla chiave e da un'etichetta che può essere \0. È possibile eseguire una query su un archivio di Configurazione app per i valori chiave specificando un modello. L'archivio di Configurazione app restituisce tutti i valori chiave che corrispondono al modello, inclusi i valori e gli attributi corrispondenti.

Valori

Anche i valori assegnati alle chiavi sono stringhe Unicode. Per i valori è possibile usare tutti i caratteri Unicode. A ogni valore è associato un tipo di contenuto facoltativo definito dall'utente. Usare questo attributo per archiviare informazioni, ad esempio uno schema di codifica, su un valore che consente all'applicazione di elaborarla correttamente.

I dati di configurazione archiviati in un archivio di Configurazione app, che include tutte le chiavi e tutti i valori, sono crittografati negli stati inattivo e in transito. Configurazione app non è una soluzione da usare in sostituzione di Azure Key Vault. Non usarla quindi per archiviare i segreti dell'applicazione.