Traduit par IA. Pas encore relu par la communauté. Lire en anglais

Blog · 20 octobre 2023 · Steve Simpson · Sécurité

La sécurité au niveau des champs (FLS) dans Salesforce : détails et stratégies

Bienvenue dans une nouvelle séance de la série sur la sécurité. Aujourd’hui, nous allons examiner en profondeur la sécurité au niveau des champs (FLS) de Salesforce. Cette fonctionnalité est essentielle quand vous avez déjà donné accès à un objet mais voulez contrôler la visibilité de certains champs de cet objet.

1. Introduction

La sécurité au niveau des champs consiste à contrôler qui peut voir certains champs d’un objet. Prenons un objet avec un champ qui contient des données confidentielles. Comment s’assurer que seuls certains utilisateurs peuvent voir ces données ?

2. Le scénario

Pour illustrer, prenons un exemple fictif avec « Paul le pilote ». Nous avons un objet nommé « Airport », et dans cet objet un champ appelé « Security Status ». Notre objectif : que seul Paul puisse accéder à ce champ, et restreindre les autres.

Schéma : stratégies de sécurité au niveau des champs pour un champ Security Status sur un objet Airport : accorder l'accès uniquement via les ensembles d'autorisations qui en ont besoin, utiliser la visibilité conditionnelle des champs (le champ reste visible dans les vues de liste, les rapports et la recherche), ou verrouiller le champ et l'afficher via un composant web Lightning

3. Accorder l’accès

D’abord, dans le gestionnaire d’objets d’« Airport », nous créons un nouveau champ. Dans notre exemple, c’est une liste de sélection intitulée « Security Status » avec des options comme « Normal », « Elevated » et « Lockdown ».

Au lieu de donner l’accès au niveau du profil, passez à une sécurité au niveau des ensembles d’autorisations. Seule exception : l’administrateur système, qui peut garder un accès au niveau du profil.

Par conséquent, par défaut, seul l’administrateur système peut voir ce nouveau champ.

4. Ensembles d’autorisations

Pour donner l’accès à Paul :

  1. Allez dans Ensembles d’autorisations.
  2. Vérifiez les groupes d’ensembles d’autorisations de Paul. Vous y trouverez un groupe nommé « Airport View » (créé lors d’une démo précédente).
  3. Ajustez les paramètres d’objet de ce groupe pour donner un accès en lecture au champ « Security Status » (avec la sécurité au niveau des champs standard).

Avec ces étapes, Paul comme toute autre personne disposant de l’ensemble d’autorisations « Airport View » pourra voir le statut de sécurité sur tous les enregistrements Airport auxquels elle a accès.

5. Affichage conditionnel des champs avec Dynamic Forms

[caption id="" align=“alignnone” width=“3002”]Une condition de filtre peut être ajoutée au niveau de chaque champ Une condition de filtre peut être ajoutée au niveau de chaque champ [/caption]

Si vous voulez afficher le champ de façon conditionnelle :

  1. Ouvrez le Générateur d’applications Lightning.
  2. Passez à Dynamic Forms.
  3. Ajoutez un filtre au champ « Security Status ». Par exemple, n’affichez ce champ que si le type d’aéroport est « Large ».

N’oubliez pas : cette méthode ne masque le champ que dans l’interface utilisateur ; le champ reste accessible dans les vues de liste, les rapports, les tableaux de bord et la recherche globale. Ce n’est donc pas une méthode infaillible pour garantir une confidentialité absolue des données.

6. Une sécurité avancée avec les composants web Lightning (LWC)

S’il existe un vrai besoin de sécurité stricte au niveau des champs :

N’accordez pas la sécurité au niveau des champs standard. En effet, si l’utilisateur a un accès FLS (sécurité au niveau des champs) au champ, il pourra peut-être y accéder par d’autres moyens, comme :

Capture d'écran : une vue de liste Airports qui affiche toujours le champ Security Status

Concevez un composant web Lightning (LWC) qui s’exécute en contexte système et affiche le champ de façon conditionnelle.

Les LWC sont robustes pour afficher des données, mais ils peuvent poser des difficultés pour la saisie ou la modification. Il faudra peut-être un écran de modification personnalisé dans le LWC.

Conclusion

Sécuriser les champs dans Salesforce est essentiel. Selon le niveau de sécurité requis, Salesforce offre plusieurs options :

Merci

Merci d’avoir suivi cette séance. N’oubliez pas : la sécurité est primordiale, et comprendre la sécurité au niveau des champs vous permet de garder vos données Salesforce confidentielles et entre de bonnes mains.

Restez à l’écoute ici sur www.SteveTechArc.com et sur la chaîne YouTube @SteveTechArc (opens in a new tab).

Contribuer à changer le monde en partageant de bonnes idées avec d’autres architectes et avec celles et ceux qui sont en chemin pour le devenir !

Transcription réalisée avec l’aide de l’IA

STA 4.5