Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure App Configuration stocke les données de configuration en tant que valeurs clés. Les valeurs clés sont une représentation simple et flexible des paramètres d’application utilisés par les développeurs.
Clés
Les clés servent d’identificateurs pour les valeurs de clé et sont utilisées pour stocker et récupérer les valeurs correspondantes. Il est courant d’organiser les clés dans un espace de noms hiérarchique en utilisant un caractère délimiteur, comme / ou :. Utilisez une convention la mieux adaptée à votre application. App Configuration traite les clés dans leur ensemble. Il n’analyse pas les clés pour déterminer la structure de leur nom ou pour appliquer une règle quelconque.
Voici un exemple de noms de clés structurés en une hiérarchie basée sur les services de composants :
AppName:Service1:ApiEndpoint
AppName:Service2:ApiEndpoint
L’utilisation des données de configuration dans des infrastructures d’application peut exiger des schémas de nommage spécifiques pour les paires clé-valeur. Par exemple, le framework Spring Cloud de Java définit les ressources Environment qui fournissent des paramètres à une application Spring. Ces ressources sont paramétrisées par des variables qui incluent le nom d’application et le profil. Les clés des données de configuration associées à Spring Cloud commencent généralement par ces deux éléments, séparés par un délimiteur.
Les clés stockées dans App Configuration sont des chaînes Unicode qui respectent la casse. Les clés app1 et App1 sont distinctes dans un magasin App Configuration. Gardez cette précision à l’esprit quand vous utilisez des paramètres de configuration au sein d’une application, car certaines infrastructure gèrent les clés de configuration sans tenir compte de la casse. Nous vous déconseillons d’utiliser la casse pour différencier les clés.
Vous pouvez utiliser n’importe quel caractère Unicode dans les noms de clés, à l’exception de %. Un nom de clé ne peut pas être . ou .. non plus. Il existe une limite de taille totale de 10 Ko pour une clé-valeur. Sont inclus tous les caractères de la clé, sa valeur et tous les attributs facultatifs associés. À la hauteur de cette limite, vous pouvez avoir de nombreux niveaux hiérarchiques pour les clés.
Concevoir des espaces de noms de clés
Deux approches générales des clés de nommage sont utilisées pour les données de configuration : plate ou hiérarchique. Ces méthodes sont similaires du point de vue de l’utilisation de l’application, mais le nommage hiérarchique offre de nombreux avantages :
- Plus facile à lire. Les délimiteurs fonctionnent comme des espaces dans une phrase dans un nom de clé hiérarchique. Ils fournissent également des sauts naturels entre les mots.
- Plus facile à gérer. Une hiérarchie de noms de clé représente des groupes logiques de données de configuration.
- Plus facile à utiliser. Il est plus simple d’écrire une requête qui fait correspondre des clés à un modèle dans une structure hiérarchique et de récupérer uniquement une partie des données de configuration. En outre, de nombreux frameworks de programmation plus récents prennent en charge nativement les données de configuration hiérarchiques, de sorte que votre application puisse utiliser des ensembles de configuration spécifiques.
Vous pouvez organiser les clés de manière hiérarchique dans App Configuration de plusieurs manières. Pensez à des clés telles que des URI. Chaque clé hiérarchique est un chemin de ressource composé d’un ou plusieurs composants qui sont joints ensemble par des délimiteurs. Choisissez le caractère à utiliser comme délimiteur en fonction de ce dont votre application, votre langage de programmation ou votre infrastructure a besoin. Utilisez plusieurs délimiteurs pour différentes clés dans App Configuration.
Clés d’étiquette
Les paires clé-valeur peuvent éventuellement porter un attribut d’étiquette dans App Configuration. Les étiquettes sont utilisées pour différencier les paires clé-valeur qui ont la même clé. Une clé app1 avec des étiquettes A et B forme deux clés distinctes dans un magasin App Configuration. Par défaut, une paire clé-valeur n’a pas d’étiquette. Pour référencer explicitement une paire clé-valeur sans étiquette, utilisez \0 (URL encodée sous la forme %00).
Label offre un moyen pratique de créer des variantes d’une clé. Les étiquettes sont souvent utilisées pour spécifier plusieurs environnements pour la même clé :
Key = AppName:DbEndpoint & Label = Test
Key = AppName:DbEndpoint & Label = Staging
Key = AppName:DbEndpoint & Label = Production
Valeurs clés de version
Utilisez des étiquettes comme moyen de créer plusieurs versions d’une clé-valeur. Par exemple, vous pouvez entrer un numéro de version d’application ou un ID de validation Git dans les étiquettes pour identifier les valeurs clés associées à une build logicielle particulière.
Remarque
Si vous recherchez des versions modifiées, App Configuration conserve toutes les modifications d’une clé-valeur qui s’est produite au cours de la dernière période de temps automatiquement. Pour plus d’informations, consultez Capture instantanée à un point dans le temps.
Interroger des paires clé-valeur
Chaque paire clé-valeur est identifiée de manière unique par sa clé et une étiquette pouvant être \0. Pour interroger un magasin App Configuration afin de connaître des paires clé-valeur, vous devez spécifier un modèle. Le magasin App Configuration retourne toutes les paires clé-valeur qui correspondent au modèle, ainsi que leurs valeurs et attributs correspondants. Utilisez les modèles clés suivants dans les appels d’API REST à App Configuration :
| Clé | Descriptif |
|---|---|
key est omis ou key=* |
Correspond à toutes les clés. |
key=abc |
Correspond exactement au nom abc de clé. |
key=abc* |
Correspond aux noms de clés qui commencent par abc. |
key=abc,xyz |
Correspond aux noms de clés abc ou xyz. Limité à cinq CSV. |
Vous pouvez également inclure les modèles d’étiquette suivants :
| Étiquette | Descriptif |
|---|---|
label est omis ou label=* |
Correspond à n’importe quelle étiquette, qui inclut \0. |
label=%00 |
Correspond à l’étiquette \0. |
label=1.0.0 |
Correspond exactement à l’étiquette 1.0.0. |
label=1.0.* |
Correspond aux étiquettes qui commencent par 1.0.. |
label=%00,1.0.0 |
Correspond aux étiquettes \0 ou 1.0.0, limitées à cinq valeurs séparées par des virgules (CSV). |
Remarque
*, ,et \ sont des caractères réservés dans les requêtes. Si un caractère réservé est utilisé dans vos noms de clé ou vos étiquettes, vous devez le placer dans une séquence d’échappement en utilisant \{Reserved Character} dans les requêtes.
Valeurs
Les valeurs attribuées aux clés sont également des chaînes Unicode. Vous pouvez utiliser tous les caractères Unicode pour les valeurs.
Utiliser le type de contenu
Chaque clé-valeur dans App Configuration a un attribut de type de contenu. Vous pouvez éventuellement utiliser cet attribut pour stocker des informations sur le type de valeur dans une clé-valeur qui aide votre application à le traiter correctement. Vous pouvez utiliser n’importe quel format pour le type de contenu. App Configuration utilise les types multimédias (également appelés types MIME) pour les types de données intégrés tels que les indicateurs de fonctionnalité, les références Key Vault et les valeurs de clés JSON.