4D v16.3

Présentation du contrôle des accès

Accueil

 
4D v16.3
Présentation du contrôle des accès

Présentation du contrôle des accès  


 

 

Si différentes personnes utilisent votre base de données, vous pouvez souhaiter contrôler ses accès ou proposer différentes fonctionnalités ou interfaces aux utilisateurs. Si vous concevez des applications destinées à être utilisées dans un environnement multi-utilisateurs ou sur le Web, il peut être essentiel de protéger des données importantes. Vous pouvez fournir cette protection en affectant des mots de passe aux utilisateurs et en créant des groupes qui possèdent des niveaux d’accès correspondant à des degrés de confidentialité différents.

Note : Consultez le document 4D Security guide pour une vue d'ensemble des fonctions de sécurité de 4D.

Le système de gestion des accès de 4D est basé sur les notions d’utilisateurs et de groupes. Vous créez des noms d’utilisateurs et vous leur affectez un mot de passe, vous placez les utilisateurs dans des groupes, et vous assignez à chaque groupe les privilèges d’accès appropriés aux objets de la base.

L’exemple suivant représente l’affectation du privilège "Accès” de la méthode projet Effacer_Tout à un groupe. Les groupes peuvent généralement se voir affecter comme privilèges “Accès” (utilisation) et/ou “Propriétaire” (modification).

Ce point est détaillé dans la section Assurer la maintenance du système.

Pour ouvrir une base de données, un utilisateur saisit son nom ou le sélectionne dans la liste des utilisateurs puis saisit son mot de passe. Ensuite, en fonction des groupes auxquels il appartient ainsi que des privilèges de ces groupes, l’utilisateur peut accéder aux parties de la base de données qui ont été spécifiées dans le système d’accès.

La page "Sécurité” de la boîte de dialogue des Propriétés de la base vous permet de paramétrer le mode d’accès à la base (cf. section Page Sécurité). 

  • Par défaut, la boîte de dialogue de saisie de mot de passe suivante est affichée :

    Dans cette boîte de dialogue, l’utilisateur sélectionne son nom dans la liste des utilisateurs et saisit son mot de passe dans la zone de saisie.
  • Si vous désélectionnez l’option Afficher les utilisateurs dans la fenêtre Mots de passe dans les Propriétés de la base, la boîte de dialogue de saisie de mots de passe ci-dessous est affichée :

    Dans cette boîte de dialogue, l’utilisateur doit saisir son nom et son mot de passe, ce qui renforce la sécurité de l’application.
  • Si vous avez défini un Utilisateur par défaut dans les Propriétés de la base et lui avez associé un mot de passe, la boîte de dialogue suivante est affichée :

    Les utilisateurs n’ont alors qu’à saisir un mot de passe.
  • Si vous n’avez pas associé de mot de passe à l’utilisateur par défaut, aucune boîte de dialogue n’apparaît. Chaque utilisateur dispose dans ce cas des privilèges et restrictions d’accès qui ont été assignés à l’utilisateur par défaut.

Si l’option L’utilisateur peut changer son mot de passe est cochée dans les Propriétés de la base, le bouton Changer est affiché dans la boîte de dialogue de saisie du mot de passe. Ce bouton permet à l’utilisateur courant de modifier son propre mot de passe. 

Note 4D Server : Il est possible d’enregistrer les paramètres ainsi que les identifiants de connexion à une base dans un fichier d’accès de type .4DLink. Pour plus d’informations, reportez-vous à la section Connexion à une base 4D Server dans le manuel de référence de 4D Server. 

Au cours de l’exploitation de la base de données, si un utilisateur essaie d’appeler un objet (formulaire, commande de menu, méthode) auquel son groupe n’a pas accès, 4D affiche un message d’erreur du type “vous n’avez pas l’autorisation d’utiliser cet objet”.

Note : Si une méthode ON ERR CALL est installée, ce message d’erreur n’est pas affiché pour les méthodes.

Il est possible de personnaliser l’icône affichée dans la boîte de dialogue de connexion à une base de données. Par défaut, cette icône représente le logo de 4D.

Pour remplacer cette icône par celle de votre choix, il vous suffit de placer un fichier nommé LoginImage.png dans le dossier Resources de la base (situé à côté du fichier de structure de la base, cf. section Description des fichiers de 4D). Le fichier personnalisé doit être de type “png” et sa taille doit être de 80x80 pixels. 

-->

Lorsque l'utilisateur coche l'option Se souvenir du mot de passe, 4D enregistre le mot de passe au moment de la validation de la boîte de dialogue et le réutilise automatiquement lors des connexions ultérieures. Le mot de passe est encrypté et stocké localement dans le fichier .4DLink correspondant à la base.

Du fait de son principe, cette fonctionnalité n'est pas utilisable avec toutes les applications 4D. Le tableau suivant précise sa disponibilité :

4D mode local4D mode distant
Base non fusionnéeouioui
Base fusionnée avec 4D Enginenonoui

Une fois défini, le système de contrôle des accès peut être exploité pour plusieurs types d’accès externes à la base de données 4D. Vous pouvez ainsi tirer parti de la hiérarchie des accès dans ces contextes spécifiques. 

Le système des utilisateurs et groupes de 4D peut être exploité pour :

  • le serveur HTTP intégré de 4D. Pour plus d’informations sur la prise en compte des utilisateurs et groupes 4D lors des connexions au serveur Web de 4D, reportez-vous à la section Sécurité des connexions dans le manuel Langage.
  • le serveur SQL intégré de 4D. Pour plus d’informations sur les groupes d’accès au serveur SQL intégré de 4D, reportez-vous à la section Configuration du serveur SQL de 4D dans le Guide de référence SQL 4D.

Le meilleur moyen d’assurer la sécurité de votre base de données et de proposer différents niveaux d’accès aux utilisateurs est d’utiliser un schéma hiérarchique des accès. Les utilisateurs peuvent être affectés à différents groupes et les groupes peuvent être hiérarchisés pour créer des niveaux de droits d’accès. Cette section décrit différentes approches de ce thème.

Dans cet exemple, un utilisateur appartient à l’un des trois groupes définis suivant son niveau de responsabilité. Les utilisateurs du groupe Comptabilité sont responsables de la saisie de données. Les utilisateurs du groupe Dir. finance sont responsables de la mise à jour des données, comme la mise à jour d’enregistrements ou la suppression d’enregistrements obsolètes. Les utilisateurs du groupe Direction générale sont responsables de l’analyse de données, ce qui inclut la réalisation de recherches et l’impression d’états.

Les groupes sont hiérarchisés afin que les privilèges soient correctement affectés aux utilisateurs de chacun des groupes. 

  • Le groupe Direction générale ne contient que les utilisateurs de “haut niveau”.
  • Le groupe Dir. finance contient les utilisateurs du groupe Direction générale.
  • Le groupe Comptabilité contient des opérateurs de saisie mais aussi les utilisateurs des groupes Dir. finance et donc Direction générale.

Vous pouvez ensuite décider des privilèges affectés à chaque groupe suivant le niveau de responsabilité des utilisateurs qu’il contient.

Si vous autorisez l’accès à un formulaire de saisie pour le groupe Comptabilité, par exemple, cela veut dire que tous les utilisateurs peuvent utiliser ce formulaire de saisie. Si vous autorisez l’accès à un formulaire de saisie pour le groupe Dir. finance, cet accès est limité aux utilisateurs des groupes Dir. finance et Direction Générale. Si vous autorisez l’accès à un formulaire de saisie pour le groupe Direction générale, seuls les utilisateurs du groupe Direction générale y auront accès.

Un tel système hiérarchique rend aisée l’affectation d’un utilisateur à un groupe. Il suffit de placer chaque utilisateur dans un groupe et d’utiliser la hiérarchie des groupes pour déterminer les accès.

Votre système de mots de passe doit restreindre les accès au plus bas niveau possible, généralement au niveau du formulaire.



Voir aussi  

Page Sécurité

 
PROPRIÉTÉS 

Produit : 4D
Thème : Utilisateurs et groupes

 
HISTORIQUE 

 
MOTS-CLÉS 

4DLink

 
UTILISATION DE L'ARTICLE

4D - Mode Développement ( 4D v16)
4D - Mode Développement ( 4D v16.1)
4D - Mode Développement ( 4D v16.3)