- Sécurité au niveau ligne (RLS) : contrôle quels enregistrements les utilisateurs peuvent accéder.
- Sécurité au niveau champ (FLS) : contrôle quels champs dans les enregistrements les utilisateurs peuvent accéder.
Types de permissions
Chaque niveau de sécurité a différentes permissions que vous pouvez définir. Pour chaque permission, vous définissez qui est autorisé à effectuer l’action.Sécurité au niveau ligne (RLS)
create- Ajouter de nouveaux enregistrementsread- Voir les enregistrementsupdate- Modifier les enregistrementsdelete- Supprimer les enregistrements
Sécurité au niveau champ (FLS)
read- Voir le champwrite- Créer ou modifier le champ
Valeurs de permission
Chaque permission accepte l’une des valeurs suivantes :true- Autoriser tous les utilisateursfalse- Bloquer tous les utilisateurs{<condition>}- Autoriser les utilisateurs correspondant à la condition
Syntaxe de condition
Lorsque vous utilisez{<condition>} comme valeur de permission, vous pouvez définir des règles qui vérifient les attributs ou les rôles utilisateur.
1. Comparaison entité-utilisateur
Comparez les champs d’enregistrement aux valeurs de l’utilisateur actuel.
Champs d’entité que vous pouvez référencer :
created_by- E-mail de l’utilisateur qui a créé l’enregistrementcreated_by_id- ID de l’utilisateur qui a créé l’enregistremententity_name- Nom du type d’entitéapp_id- ID de l’applicationenvironment- Soitprodsoitdevis_sample- Si c’est un échantillon de donnéesis_deleted- Indicateur de suppression doucedeleted_date- Quand il a été supprimédata.*- Tout champ des propriétés du schéma de votre entité
{{user.email}}- E-mail de l’utilisateur{{user.id}}- ID de l’utilisateur{{user.role}}- Rôle de l’utilisateur{{user.data.*}}- Champs utilisateur supplémentaires que vous définissez
user_condition.
Champs utilisateur que vous pouvez vérifier :
email- E-mail de l’utilisateurid- ID de l’utilisateurrole- Rôle de l’utilisateurdata.*- Champs utilisateur personnalisés
$or, $and, $nor, $in, $nin, $all
Exemple :
Exemple de sécurité au niveau ligne (RLS)
Ajoutezrls au niveau de l’entité :
Exemple de sécurité au niveau champ (FLS)
Ajoutezrls aux propriétés de champs individuels :
Exemple complet avec sécurité
Voici un schéma d’entité avec RLS et FLS :Déploiement des règles de sécurité
Les règles de sécurité font partie de votre schéma d’entité. Après avoir ajouté ou mis à jour des règles de sécurité, déployez en utilisantentities push. Les règles de sécurité sont également déployées automatiquement lorsque vous exécutez la commande deploy pour déployer l’ensemble de votre projet.
Voir aussi
- Présentation des entités : apprenez la configuration du schéma de base de données
- Schémas d’entités : définissez la structure de votre entité
- Schéma utilisateur : entité intégrée spéciale pour l’authentification utilisateur
- Structure du projet : comment les schémas d’entités s’intègrent dans votre projet
Cette page a été traduite à l’aide de l’IA. Pour les informations les plus précises et à jour, consultez la version anglaise.

