Connexion aux environnements Adélia :
- Clic droit sur l'environnement >> Connexion.
- Cocher "Utilisateur connecté au système" => authentification Windows à la base de données SQL Server
- Spécifier un profil => authentification SQL à la base de données SQL Server
On peut savoir quel type d'authentification SQL Server attend depuis la fenêtre de connexion de SQL Management Studio :
Au niveau des concepteurs Adélia, il faut que le profil sys. associé au concepteur soit identique :
Utilisateurs et dbo :
- Il faut que le profil soit connu de SQL Server et qu’il ait les droits au-moins Public pour accéder à la base (environnement Adélia).
- Lorsqu’on se connecte à une base SQL Server sur laquelle on dispose de droit d’administration, on est reconnu en tant qu’utilisateur « dbo » (database owner). Il s’agit de la valeur retournée par la requête « SELECT USER » qui est exécutée par Adélia pour définir le profil système associé au concepteur.
- Adélia ne peut donc pas distinguer les concepteurs disposant de ces droits, puisqu’ils sont tous redirigés vers le concepteur ayant le profil système « dbo » associé (ou ne peuvent pas se connecter si celui-ci n’est pas configuré).
- Les profils disposant de ce droit sont :
- Le profil propriétaire de la base de données ;
- Les profils explicitement configurés pour (disposant du droit db_owner sur la base de données) ;
- Implicitement les administrateurs SQL Server, titulaires du rôle sysadmin.
- En authentification de type Windows, les droits de l’utilisateur sont ceux explicitement configurés pour l’utilisateur, ainsi que ceux hérités des groupes Windows dont il fait partie.
- Exemple : Les membres du groupe « informatique » (Windows) n’ont pas de droit explicitement configuré. Par contre, le groupe « informatique » est membre du groupe local « Administrateurs » de la machine. Ce groupe est configuré dans SQL Server comme disposant du rôle sysadmin. Les membres du groupe « informatique » héritent donc du rôle sysadmin, et sont donc par extension des droits db_owner sur toutes les bases de données.
=> Configurer SQL Server de façon à dédier les droits d’administration au groupe « informatique » et révoquer le rôle sysadmin pour le groupe « administrators ».
-
-
Si le nom de connexion est <DOMAINE>\<Profil>, il s’agit d’une authentification Windows.
Si le nom de connexion est <Profil>, il s’agit d’une authentification SQL Server.
Il faut qu’on retrouve ce nom de connexion au niveau du concepteur Adélia (zone « Profil système »).
-
Si l’utilisateur de la base a comme rôle : db_owner, il est considéré comme dbo (data base owner).
-
-
-
De même, au niveau de la connexion générale à SQL Server, si l’utilisateur a le rôle de serveur sysadmin, il est considéré comme dbo.
-
Pour ne plus qu’un utilisateur soit reconnu comme dbo, il ne doit pas être sysadmin, et ne doit pas avoir le rôle db_owner sur la base. Il doit cependant avoir au-moins le rôle public sur la base pour pouvoir s’y connecter et travailler.
Attention ! Il faut qu’il y ait au-moins un utilisateur dbo sysadmin.
Dans SQL Server Management Studio, aller dans la Sécurité (au niveau SQL Server) >> Connexions.
Double-cliquer sur l’utilisateur concerné.
Sélectionner la page Rôles du serveur.
Dans la liste des « Rôles du serveur », décocher « sysadmin ».
Valider.
Sélectionner ensuite la page Mappage de l’utilisateur.
Dans la liste des « Utilisateurs mappés à cette connexion », sélectionner la base concernée.
Dans la liste des « Appartenance », décocher « db_owner » et cocher « public ».
Valider.
Vérifier le profil de connexion à la base de données / environnement SQL Server :
- Prendre une fenêtre de commandes DOS.
- Exécuter « hsql ».
- Pour changer le prompt : « driver sql server ».
- Se connecter à l’environnement :
- Authentification Windows : « connect ENV ».
- Authentification SQL : « connect ENV USER ».
- (remplacer ENV par le nom de l’environnement et USER par le profil SQL de connexion).