Ce contenu décrit la Recherche d’utilisateurs Auth0 actuelle, version 3.
- Un terme peut être un mot unique tel que
janeousmith. - Il peut s’agir d’une phrase entourée de guillemets (
"green apple"), qui correspondra à tous les mots de la phrase dans le même ordre. - Un terme sans nom de champ ne correspondra pas au texte des champs métadonnées utilisateur.
- Plusieurs termes peuvent être regroupés entre parenthèses pour former des sous-requêtes.
- Les valeurs de recherche pour les champs utilisateur normalisés (
email,name,given_name,family_name, etnickname) sont insensibles à la casse. Tous les autres champs (y compris tous les champsapp_metadata/user_metadata) sont sensibles à la casse. - Les opérateurs (
AND,OR,NOT) fonctionnent sur tous les champs utilisateur normalisés et les champs de métadonnées racine. - Les opérateurs doivent toujours être mis en majuscules.
Champs pouvant être recherchés
Vous pouvez rechercher des utilisateurs à l’aide de tous les champs de profil utilisateur normalisé et des champs ci-dessous :| Rercherche Champ | Type de données | Description |
|---|---|---|
phone_number | texte | Le numéro de téléphone de l’utilisateur. Valide uniquement pour les utilisateurs disposant d’un appareil compatible SMS. |
phone_verified | booléen | La valeur true/false (« vrai/faux ») indique si le numéro de téléphone de l’utilisateur a été vérifié. Valide uniquement pour les utilisateurs disposant d’un appareil compatible SMS. |
logins_count | entier | Le nombre de fois où l’utilisateur s’est connecté. Si un utilisateur est bloqué et se connecte, la session bloquée est comptabilisée dans logins_count et met à jour la valeur last_login. |
created_at | date time | Horodatage de la création du profil utilisateur. |
updated_at | date time | Horodatage de la dernière mise à jour/modification du profil de l’utilisateur. |
last_login | date time | L’horodatage de la dernière connexion de l’utilisateur. Dans le cas où cette propriété est exécutée à l’intérieur d’une Rule (Règle avec l’objet user, la valeur sera employée pour la connexion qui a déclenché la règle (puisque les Règles s’exécutent après la connexion réelle). |
last_ip | texte (adresse IP valide) | L’adresse IP employée lors de la dernière connexion de l’utilisateur. |
blocked | booléen | La valeur true (vrai) ou false (faux) indique si l’utilisateur a été bloqué. Remarque : true rapporte seulement les utilisateurs bloqués via le tableau de bord de l’administrateur et Management API; il ne rapporte pas les utilisateurs bloqués par la détection d’anomalie par force brute. |
email.domain | texte | La partie domaine du courriel de l’utilisateur. |
organization_id | text (identifiant d’organization valide) | L’organization dont l’utilisateur est membre. |
- booléen
- numériques : entiers ou doubles
- texte
- objets : pour rechercher une valeur scalaire imbriquée dans un autre objet, utilisez le chemin d’accès au champ. Par exemple,
app_metadata.subscription.plan:"gold" - tableaux : pour rechercher des champs dans des objets imbriqués dans des tableaux, utilisez le chemin d’accès au champ et ignorez le niveau du tableau. Par exemple,
user_metadata.addresses.city:"Paris"
null ne sont pas indexés et ne peuvent pas être recherchés.
Les recherches par plage et par caractères de remplacement ne sont pas utilisables sur les champs user_metadata.
Correspondance exacte
Pour trouver des correspondances exactes, utilisez des guillemets doubles :name:"jane smith".
Par exemple, pour trouver les utilisateurs portant le nom jane smith, utilisez q=name:"jane smith" :
Recherche générique
Les recherches par caractères de remplacement peuvent être effectuées sur les termes en utilisant le caractère astérisque (*) pour remplacer zéro ou plusieurs caractères. Les recherches par caractères de remplacement ne sont pas utilisables pour les champs user_metadata.
Exemples
name:john*renvoie tous les utilisateurs dont le nom commence parjohn.name:j*renvoie tous les utilisateurs dont le nom commence parj.q=name:john*renvoie tous les utilisateurs dont le nom commence parjohn.- Pour la correspondance des suffixes, les éléments littéraux doivent comporter trois caractères ou plus. Par exemple,
name:*usaest autorisé, maisname:*sane l’est pas.
Plages
Vous pouvez utiliser des plages dans vos requêtes de recherche d’utilisateurs. Les recherches par plage ne sont pas utilisables pour les champs de métadonnées utilisateur.- Pour les plages inclusives, utilisez des crochets :
[min TO max]. - Pour les plages exclusives, utilisez des crochets :
{min TO max}. - Les crochets et les apostrophes courbes peuvent être combinés dans la même expression de plage :
logins_count:[100 TO 200}. - Utilisez les plages en combinaison avec des caractères de remplacement. Par exemple, pour trouver tous les utilisateurs ayant plus de 100 connexions, utilisez
q=logins_count:{100 TO *].
Exemples d’attributs de profil pouvant faire l’objet d’une recherche
Lorsque vous recherchez des utilisateurs dans Management API Auth0, vous pouvez filtrer les utilisateurs paruser_metadata ou app_metadata. Pour ce faire, vous pouvez utiliser la syntaxe de recherche Lucene avec le paramètre q .
La liste de Management API Auth0 ou le point de terminaison de recherche des utilisateurs étant limité à 1 000 résultats (10 pages de 100 enregistrements), le filtrage est un moyen utile de s’assurer que les résultats les plus pertinents sont renvoyés.
Vous trouverez ci-dessous un exemple de profil utilisateur user_metadata :
Filtrer les attributs de métadonnées
Pour renvoyer une valeuruser_metadata, mettez à jour la requête q avec un filtre pour l’attribut.
Pour les valeurs user_metadata vous pouvez interroger le profil directement :
q: _exists_:user_metadata.fav_color
Cette requête renvoie tous les profils utilisateurs dont l’attribut fav_color figure dans les métadonnées user_metadata.
Filtrer les attributs et les valeurs des objets imbriqués des métadonnées
Vous pouvez également effectuer une recherche sur les objets imbriqués dansuser_metadata :
q: _exists_:user_metadata.preferences.fontSize
Ceci permet d’interroger tous les profils utilisateurs dont les preferences.fontSize sont configurés dans les métadonnées user_metadata.
Pour rechercher les valeurs d’un objet imbriqué à partir d’un autre objet, examinez la requête ci-dessous :
q: user_metadata.preferences.fontSize:13
Cette requête renvoie tous les profils utilisateurs qui correspondent à l’attribut fontSize avec la valeur 13.
Filtrer les valeurs des tableaux imbriqués de métadonnées
Vous pouvez utiliser la requête ci-dessous pour rechercher des champs dans des tableaux imbriqués :q: user_metadata.addresses.city:"Seattle"
Cette requête renvoie tous les profils utilisateurs qui renvoient la valeur Seattle à partir des attributs adress.citydans les user_metadata.