Comprendre les Rôles

Cet article a été traduit de l'anglais par IA et peut contenir des erreurs. Vos commentaires nous aideront à l'améliorer.

Dans cet article, nous explorons les détails de l'utilisation des Rôles pour déterminer les autorisations au sein d'ActivityInfo. Dans ActivityInfo, vous pouvez créer des Rôles pour contrôler les données auxquelles les utilisateurs peuvent accéder et les actions que vous autorisez les utilisateurs à effectuer dans votre Base de données.

Dans cet article, vous pouvez découvrir les concepts clés et voir des exemples sur la manière dont vous pouvez utiliser les Rôles pour définir les autorisations des utilisateurs.

Concepts clés

Ressources

Les Ressources font référence aux Formulaires, Dossiers, Rapports et Bases de données dans ActivityInfo.

Opérations

Les Opérations font référence à toute action effectuée sur les ressources et les utilisateurs, telles que :

  • Les autorisations au niveau de l'enregistrement, comme la consultation, l'ajout, la modification ou la suppression d'enregistrements.
  • Les autorisations liées aux opérations, comme la gestion des utilisateurs, l'ajout ou la modification de formulaires, et la gestion des verrous.

Pour plus d'informations sur toutes les opérations possibles dans ActivityInfo, consultez la liste complète des opérations.

Subventions

Une Subvention identifie la ressource spécifique sur laquelle s'appliquent les opérations qu'un utilisateur est autorisé à effectuer. Les Subventions peuvent être appliquées à n'importe quel type de ressource.

Les Subventions sont héritées par toutes les ressources contenues. Une subvention appliquée à un dossier applique les paramètres à tous les formulaires/dossiers de ce dossier, tandis qu'une subvention appliquée à une base de données entière applique les paramètres à toutes les ressources de cette base de données. Les subventions héritées peuvent également être « remplacées » sur une ressource contenue en appliquant une nouvelle subvention sur cette ressource, si désiré.

Ce diagramme illustre comment les subventions sont héritées par les ressources contenues dans une autre ressource qui reçoit une subvention explicite.

Ce diagramme illustre comment les subventions héritées peuvent être remplacées en accordant une subvention explicite à une ressource spécifique contenue dans une autre ressource.

Subventions facultatives

Une subvention peut être définie comme facultative, ce qui signifie que vous pouvez choisir d'activer ou non la subvention pour chaque utilisateur que vous invitez dans votre base de données.

Conditions

Les Conditions vous permettent de définir des règles qui déterminent sur quels enregistrements un utilisateur peut effectuer des opérations. Les règles sont toujours exprimées sous forme de formule qui s'évalue à VRAI ou FAUX. Le constructeur de règles vous aide à écrire les types de formules les plus courants, y compris pour déterminer si :

  • Un enregistrement est lié à un paramètre
  • Un champ spécifique correspond à une valeur ou un ensemble de valeurs spécifiées
  • Un enregistrement est assigné à l'utilisateur

Cependant, vous pouvez toujours utiliser l'éditeur de formule pour écrire vos propres formules, y compris celles qui font référence à des champs associés ou à des sous-enregistrements.

Par exemple, vous souhaitez limiter la visibilité des enregistrements relatifs aux personnes mineures au personnel autorisé. Dans votre Formulaire « Cas », vous avez un Champ intitulé « ÂGE ». En créant une condition avec une règle où l'opération « VOIR » n'est autorisée que lorsque la formule « ÂGE>18 » est VRAIE, vous vous assurez que les utilisateurs auxquels cette condition s'applique ne pourront voir que les enregistrements où la valeur dans le champ ÂGE est supérieure à 18.

Plusieurs règles peuvent être combinées pour former une condition sur une opération spécifique, et vous pouvez décider si toutes les règles sont obligatoires pour que la condition soit remplie. De plus, vous pouvez définir des conditions différentes sur des opérations différentes. Par exemple, vous pouvez définir une condition qui permet à un utilisateur de VOIR tous les enregistrements dans un Formulaire et une autre condition qui permettrait aux utilisateurs de MODIFIER uniquement les enregistrements qui leur sont assignés.

Paramètres

Les Paramètres sont des attributs assignés à un utilisateur qui peuvent être utilisés dans des conditions pour contrôler les opérations au niveau de l'enregistrement qu'ils sont autorisés à effectuer.

Les Paramètres sont liés à un formulaire de référence, tel que « Régions », qui fournit les valeurs possibles pouvant être assignées à un utilisateur. Lorsque vous invitez un utilisateur à votre base de données, vous assignez une valeur de paramètre spécifique à cet utilisateur, ce qui associe effectivement cet utilisateur à l'enregistrement correspondant dans le formulaire de référence.

Les Paramètres peuvent ensuite être utilisés dans le cadre d'une règle dans une condition pour définir l'ensemble des enregistrements sur lesquels les opérations sont autorisées. Lorsque des paramètres sont utilisés dans une condition, vous limitez les enregistrements sur lesquels un utilisateur serait autorisé à effectuer des actions à ceux qui se réfèrent à la valeur de paramètre spécifique assignée à l'utilisateur. Par exemple, si un utilisateur a été assigné à « Ouest » pour le paramètre « Régions », alors une condition peut être configurée pour permettre à cet utilisateur d'AJOUTER uniquement des enregistrements liés à la région « Ouest ».

IMPORTANT : Pour activer les conditions basées sur des paramètres, votre formulaire doit avoir un champ de référence pointant vers le formulaire qui contient les valeurs de paramètres possibles. Si vous avez un rôle où vous activez des conditions sur des opérations au niveau de l'enregistrement qui dépendent d'un paramètre, les utilisateurs assignés à ce rôle ne pourront pas effectuer ces opérations au niveau de l'enregistrement sur les formulaires qui n'ont pas de champ de référence pointant vers le formulaire contenant les valeurs de paramètres possibles.

Rôle

Un Rôle est une certaine combinaison de Subventions et de Paramètres que vous assignez à un groupe spécifique d'utilisateurs. Les Rôles sont donc le principal moyen par lequel vous contrôlez les actions que vous autorisez les utilisateurs à effectuer dans votre base de données. Lorsque vous invitez un utilisateur à votre base de données, vous spécifiez lequel des rôles disponibles doit lui être assigné, et toutes les actions qu'il est autorisé à entreprendre seront contraintes par les subventions et les autorisations que vous avez définies pour ce rôle.

De combien de Rôles ai-je besoin ?

Généralement, vous pouvez définir un Rôle pour chaque groupe d'utilisateurs qui effectuent le même ensemble de tâches dans votre base de données. Très souvent, cela peut correspondre aux diverses fonctions au sein de votre organisation. Par exemple, vous pouvez définir un rôle pour les Chargés de Projet, un autre pour les Responsables de Secteur, et encore un autre pour les Chargés de Suivi et Évaluation.

Vous pouvez utiliser les Subventions et les Paramètres pour permettre une flexibilité dans les actions que différents utilisateurs peuvent entreprendre et maintenir au minimum le nombre de Rôles que vous devez créer. Par exemple, plutôt que de créer un rôle distinct pour chacun de vos partenaires de rapportage (ce qui sera difficile à gérer si vous en avez beaucoup), vous pouvez créer un seul rôle appelé « Partenaire de rapportage », qui a un Paramètre pour « Partenaire ». Le Paramètre « Partenaire » peut ensuite être utilisé dans le cadre d'une Condition pour s'assurer que vos partenaires de rapportage ne peuvent effectuer des actions que sur les enregistrements associés à leur propre organisation.

Dans certains cas, les bases de données sont organisées par dossier selon les lignes de clusters, ou selon les types de programmes. Dans le cas de la coordination humanitaire, vous pourriez avoir des dossiers pour la Santé, l'EAH (WASH), et les Abris et Biens Non Alimentaires (NFI) par exemple. Vous pourriez également avoir trois rôles différents en fonction de la fonction d'une personne au sein du cluster, comme Chef de Cluster, IMO de Cluster, et Membre de Cluster. Afin d'éviter d'avoir 3 x 3 = 9 rôles pour Membre du Cluster Santé, Membre du Cluster EAH, etc., vous pouvez utiliser des Subventions facultatives pour n'avoir que trois rôles. Lorsque vous assignez un rôle de « Membre de Cluster » à un utilisateur, vous choisirez également à quelles ressources spécifiques au secteur vous lui donnez accès.

Ce diagramme illustre les relations entre les différents concepts liés aux autorisations. Les Rôles peuvent avoir plusieurs subventions qui autorisent l'accès à diverses ressources au sein de votre base de données. Chaque subvention spécifie les opérations autorisées pour la ressource sélectionnée. Les opérations au niveau de l'enregistrement peuvent avoir des conditions qui leur sont attachées. Enfin, les rôles peuvent avoir plusieurs paramètres définis, qui peuvent ensuite être appliqués dans des conditions à travers les subventions selon les besoins.

Exemples

Dans cette section, vous pouvez voir quelques exemples de différents rôles avec divers niveaux d'autorisations.

Limiter l'accès aux enregistrements en fonction d'un Paramètre

Scénario

Disons que vous gérez un programme national où le personnel du programme sert des bénéficiaires dans diverses régions. Vous avez un formulaire appelé « Registre des bénéficiaires » où vous avez un enregistrement contenant les informations personnelles de chaque bénéficiaire individuel servi par le programme. Le personnel de votre programme est assigné à servir les bénéficiaires uniquement dans leur région assignée. Pour assurer la protection des données personnelles sensibles, vous souhaitez vous assurer que le personnel du programme ne puisse accéder qu'aux enregistrements des bénéficiaires qui vivent dans leur région assignée. Pour répondre à ces exigences, vous pouvez ajouter un Rôle avec les paramètres suivants.

Rôle

Vous créez un seul rôle appelé « Chargé de programme ».

Paramètres

Au sein du rôle « Chargé de programme », vous créez un paramètre appelé « Région » qui pointe vers un formulaire de référence « Régions » contenant les valeurs possibles suivantes : « Nord », « Est », « Sud » et « Ouest ».

Subventions

Vous spécifiez que ce rôle « Chargé de programme » doit avoir accès au formulaire « Registre des bénéficiaires » où vous sélectionnez « Voir les enregistrements », « Ajouter des enregistrements » et « Modifier les enregistrements » comme opérations autorisées.

Au sein de cette subvention, vous ajoutez une condition avec une règle où les opérations VOIR, AJOUTER et MODIFIER ne sont autorisées que sur les enregistrements liés à la valeur du paramètre « Région » assignée à l'utilisateur.

De cette manière, les utilisateurs qui sont assignés au rôle « Chargé de programme » et qui ont reçu la valeur de paramètre « Région » de « Nord » ne pourraient voir, ajouter et modifier que les enregistrements dans le formulaire Registre des bénéficiaires où le champ Région a été défini sur Nord.

Limiter l'accès aux enregistrements en fonction de plusieurs conditions

Scénario

Imaginez que vous gérez une base de données pour une réponse humanitaire coordonnée avec des interventions mises en œuvre dans divers secteurs. Plusieurs organisations partenaires ajoutent des enregistrements à la base de données, et vous souhaitez contrôler l'accès et les actions en fonction de l'organisation partenaire de l'utilisateur et du secteur dans lequel il opère. Pour garantir l'intégrité des données soumises par les partenaires, vous souhaitez restreindre les actions de saisie de données afin que les utilisateurs ne puissent ajouter ou modifier que les enregistrements associés à leur propre organisation partenaire. Cependant, pour faciliter la coordination entre les partenaires, vous souhaitez permettre la visibilité des enregistrements soumis par tous les partenaires au sein d'un certain secteur. Pour répondre à ces exigences, vous pouvez ajouter un Rôle avec les paramètres suivants.

Rôle

Vous créez un seul rôle pour tous les partenaires, et le nommez « Partenaire de rapportage ».

Paramètres

Vous définissez deux paramètres - un pour « Partenaire » qui pointe vers votre liste d'organisations partenaires et un autre pour « Secteur » qui pointe vers votre liste de secteurs (par ex. « Santé », « Éducation », « EAH »).

Subventions

Vous spécifiez que ce Rôle doit avoir accès au formulaire « Activités » où vous sélectionnez « Voir les enregistrements », « Ajouter des enregistrements » et « Modifier les enregistrements » comme opérations autorisées.

Vous ajoutez ensuite deux conditions au sein de cette Subvention :

  • Condition 1 : VOIR uniquement les enregistrements où le champ « Secteur » correspond à la valeur du paramètre « Secteur » assignée à l'utilisateur
  • Condition 2 : AJOUTER et MODIFIER uniquement les enregistrements où le champ « Partenaire » correspond à la valeur du paramètre « Partenaire » assignée à l'utilisateur

Limiter l'accès aux enregistrements en fonction de l'utilisateur assigné

Scénario

Disons que vous gérez une base de données de gestion de cas où chaque cas est assigné à un seul travailleur social. Parce que votre base de données contient des informations très sensibles, vous voulez vous assurer que les travailleurs sociaux ne puissent accéder qu'aux enregistrements des cas qui leur sont assignés.

Rôle

Vous créez un seul rôle appelé « Travailleur social ».

Subventions

Vous spécifiez que ce rôle doit avoir accès au formulaire « Cas » où vous sélectionnez « Voir les enregistrements », « Ajouter des enregistrements » et « Modifier les enregistrements » comme opérations autorisées.

Au sein de cette subvention, vous ajoutez une condition avec une règle où les opérations VOIR, AJOUTER et MODIFIER ne sont autorisées que sur les enregistrements qui sont assignés à l'utilisateur. Pour ce rôle, vous ajouterez une condition supplémentaire avec une formule en utilisant le constructeur de règles. Cela créerait une règle avec une formule qui vous permet de faire correspondre des enregistrements spécifiques à un utilisateur actuel. Vous sélectionnerez la condition « Enregistrement assigné à l'utilisateur », et avec la formule, assignerez « Travailleur social == @user ».

Avec ce rôle, les travailleurs sociaux ne pourraient accéder et interagir qu'avec les enregistrements appartenant aux cas qui leur sont assignés.

Le constructeur de règles contient une formule prédéfinie qui filtre les enregistrements en fonction de si la valeur sélectionnée dans un champ utilisateur du formulaire correspond à l'utilisateur actuel.

Élément suivant
Comprendre les autorisations