DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Gestion de HFSQL Client/Serveur
  • Présentation
  • Quels sont les droits disponibles ?
  • Les utilisateurs "super utilisateur"
  • Affectation des droits
  • Les différents droits disponibles
  • Gestion d'une action sur un serveur, une base de données ou un fichier de données
  • Action sur un serveur ou sur une base de données
  • Action sur un fichier de données
  • Exemple
  • Cas particuliers
  • Propriétaire d'une base de données ou d'un fichier de données
  • Modifier un droit
  • Quels sont les droits nécessaires pour ajouter/modifier les utilisateurs ou les groupes ?
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
Pour assurer la sécurité des données et la confidentialité de certaines informations, il peut être utile de restreindre certaines actions à un ensemble d'utilisateurs.
Il sera par exemple possible de donner plus de droits aux administrateurs de la base de données qu'aux utilisateurs finaux.
Remarque : Le Centre de Contrôle HFSQL permet une gestion graphique des droits accordés aux utilisateurs sur les différents éléments de la base de données.
Quels sont les droits disponibles ?

Les utilisateurs "super utilisateur"

Les utilisateurs désignés comme "Super utilisateur" sont autorisés à effectuer toutes les actions sur le serveur, les bases de données et sur tous les fichiers de données.
Pour qu'un utilisateur soit un "Super utilisateur", il suffit de l'indiquer dans les variables de description des utilisateurs.

Affectation des droits

Par défaut, lorsqu'un utilisateur ou un groupe est créé, celui-ci n'a aucun droit spécifique.
Il est possible de lui affecter les droits grâce aux fonctions suivantes :
HModifieDroitBaseDeDonnéesModifie les droits donnés à un utilisateur ou à un groupe pour une base de données HFSQL Client/Serveur.
HModifieDroitFichierModifie les droits accordés sur un fichier de données HFSQL Client/Serveur pour un utilisateur ou un groupe.
HModifieDroitServeurModifie les droits accordés sur un serveur HFSQL pour un utilisateur ou un groupe.
Lorsque l'utilisateur est associé à un groupe, l'utilisateur hérite automatiquement des droits accordés au groupe.

Les différents droits disponibles

Pour chaque type d'élément (base de données, fichier de données, serveur), il est possible de donner un ou plusieurs droits aux utilisateurs et/ou aux groupes.
Pour chaque droit, il est possible de donner une des valeurs suivantes :
AutoriséL'utilisateur ou le groupe est autorisé à utiliser cette fonctionnalité.
HéritéLe droit est indéfini à ce niveau. Le serveur HFSQL utilise le droit défini au niveau supérieur :
  • droit défini au niveau du groupe pour un utilisateur.
  • droit défini au niveau de la base de données pour un fichier
InterditL'utilisateur ou le groupe n'est pas autorisé à utiliser cette fonctionnalité. S'il tente d'utiliser cette fonctionnalité, une erreur WLangage indique que l'utilisateur ne possède pas les droits nécessaires pour utiliser cette fonctionnalité.

Pour connaître les droits actuels d'un utilisateur ou d'un groupe, utilisez une des fonctions suivantes :
HInfoDroitBaseDeDonnéesPermet de connaître les droits sur une base de données définis pour un utilisateur ou un groupe.
HInfoDroitFichierPermet de connaître les droits accordés sur un fichier de données HFSQL Client/Serveur pour un utilisateur ou un groupe.
HInfoDroitServeurPermet de connaître les droits accordés sur un serveur à un utilisateur ou à un groupe d'utilisateurs.
Gestion d'une action sur un serveur, une base de données ou un fichier de données

Action sur un serveur ou sur une base de données

Les actions dépendant d'un droit sont les suivantes :
  • Supprimer ou ajouter des utilisateurs ou des groupes, visualiser des utilisateurs.
  • Créer ou supprimer une base de données.
  • Se connecter à un serveur (connexion cryptée uniquement).
  • Créer un fichier.
  • Arrêter le serveur.
Pour plus de détails sur les actions dépendant d'un droit, consultez les fonctions HInfoDroitBaseDeDonnées et HInfoDroitServeur.
Lorsqu'un utilisateur demande à effectuer une de ces actions, le serveur effectue les opérations suivantes :
  1. Vérification des droits de l'utilisateur pour réaliser cette action.
  2. Les cas suivants peuvent se présenter :
    • L'action est autorisée pour l'utilisateur : l'action est effectuée.
    • L'action est interdite pour l'utilisateur : l'action est refusée.
    • L'action est héritée : le serveur recherche les droits des groupes auxquels l'utilisateur appartient.
Si l'utilisateur appartient à au moins un groupe pour lequel l'action sur ce serveur ou cette base de données est autorisée, l'action est autorisée, sinon l'action est refusée.

Action sur un fichier de données

Les actions dépendant d'un droit sont les suivantes :
  • Lire les enregistrements d'un fichier de données.
  • Ajouter, modifier, supprimer des enregistrements.
  • Supprimer un fichier de données.
  • Lancer une modification automatique des données.
  • Lancer une ré-indexation ou un calcul de statistiques sur un fichier de données.
  • Modification des règles d'intégrité.
  • Brancher ou débrancher la gestion des doublons.
Pour plus de détails sur les actions dépendant d'un droit, consultez la fonction HInfoDroitFichier.
Lorsqu'un utilisateur demande à effectuer une de ces actions, le serveur effectue les opérations suivantes :
  1. Vérification des droits de l'utilisateur pour réaliser cette action.
  2. Les cas suivants peuvent se présenter :
    • L'action est autorisée pour l'utilisateur : l'action est effectuée
    • L'action est interdite pour l'utilisateur : l'action est refusée
    • L'action est héritée : le serveur recherche les droits des groupes auxquels l'utilisateur appartient.
      • Si l'utilisateur appartient à au moins un groupe pour lequel l'action sur ce fichier de données a été autorisé : l'action est effectuée.
      • Si l'utilisateur appartient à au moins un groupe pour lequel l'action sur ce fichier de données a été interdite : l'action est refusée.
    • Si l'action n'a pas été définie au niveau du groupe, le serveur recherche si l'action sur la base de données à laquelle appartient le fichier est :
      • autorisée : l'action est effectuée.
      • interdite : l'action est refusée.
    • Si l'action n'a pas été définie au niveau de la base de données, le serveur recherche si l'utilisateur appartient un groupe pour lequel l'action sur la base de données à laquelle appartient le fichier a été autorisé ou non.
      • Si l'action a été autorisée pour un groupe, l'action est effectuée.
      • Si l'action a été interdite pour un groupe, l'action est refusée.

Exemple

Les droits d'un utilisateur sont définis de la manière suivante :
ElémentDroit de lectureDroit d'ajouter un enregistrement
Base de donnéesInterditAutorisé
Fichier 1 de la base de donnéesAutoriséInterdit
Fichier 2 de la base de donnéesHéritéHérité
Dans ce cas :
  • L'utilisateur pourra lire les enregistrements du Fichier 1 et ajouter des enregistrements dans le fichier 2.
  • L'utilisateur n'a pas le droit de lire les enregistrements du fichier 2 car l'interdiction est héritée du droit défini sur la base de données.
  • L'utilisateur ne peut pas ajouter d'enregistrements dans le fichier 1 car cette action lui est explicitement interdite.
Cas particuliers

Propriétaire d'une base de données ou d'un fichier de données

Les bases de données et les fichiers de données possèdent un propriétaire. L'utilisateur qui crée la base ou le fichier est automatiquement déclaré propriétaire de cet élément.
  • Droit de modifier le propriétaire :
    Seul le propriétaire de l'élément ou un utilisateur possédant le droit de "Modifier le propriétaire" peut changer le propriétaire de l'élément.
    Le droit de "Modifier le propriétaire" ne peut être accordé que par le propriétaire de l'élément ou un utilisateur possédant le droit de "Modifier le propriétaire".
  • Connaître et modifier le propriétaire :
Il est également possible de modifier le propriétaire par le Centre de Contrôle HFSQL.
Modifier un droit
La modification d'un droit consiste à autoriser, interdire ou retirer une autorisation ou une interdiction.
Pour modifier un droit, il est nécessaire :
  • soit de posséder le droit "Modifier les droits".
  • soit d'être "Super Utilisateur".
Remarque : Le propriétaire de la base de données ou du fichier de données est toujours autorisé à se rajouter le droit de "Modifier les droits" sur cet élément (fonction HModifieDroitBaseDeDonnées ou HModifieDroitFichier)
Quels sont les droits nécessaires pour ajouter/modifier les utilisateurs ou les groupes ?
Le tableau suivant présente les droits nécessaires pour manipuler les caractéristiques des utilisateurs et ou des groupes :
hDroitGestionUtilisateurhDroitVisualisationUtilisateur
Actions sur les autres utilisateurs ou groupes (différents de l'utilisateur et du groupe en cours)x
Modifier le nom d'un utilisateur ou d'un groupexx
Ajouter un utilisateur ou un groupexx
Modifier les caractéristiques de l'utilisateur ou du groupe en coursx
Voir les utilisateurs ou les groupesx

Ces constantes sont utilisées dans les fonctions HInfoDroitServeur et HModifieDroitServeur.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 03/07/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale