olkain
Messages postés21Date d'inscriptionlundi 19 mai 2008StatutMembreDernière intervention30 mai 2010
-
23 oct. 2009 à 11:10
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 2014
-
23 oct. 2009 à 18:51
Bonjour à tous,
J'ai créé un petit programme qui établie une connexion à un serveur sql.
Voici ma connexion :
Public cn1 As New SqlClient.SqlConnection("data source=192.168.X.X;integrated security=sspi ;initial catalog=Intranet Clients")
J'ai donc trouvé ce code sur internet et j'ai compris que "integrated security = sspi" voulait dire que la connexion sera identifié grâce au identifiant Windows...
Cependant quand je veux établir la connexion voici le message d'erreur :
System.Data.SqlClient.SqlException: Échec de l'ouverture de session de l'utilisateur 'ARTHENYCE\ARTHESRV-EXTRAN$'.
Ce nom que l'on voit apparaitre c'est le nom du domaine\nom du serveur sur le quel l'application tourne alors que j'utilise le login : Administrateur sur le serveur...
J'ai donc trouver un code qui me permet de rentrer à l'aide d'un login et d'un mot de passe :
Public cn1 As New SqlClient.SqlConnection("data source=192.168.X.X;initial catalog=Intranet clients;persist security info=false;user id=sa;password=sa
Et là un nouveau message d'erreur apparait :
System.Data.SqlClient.SqlException: Échec de la connexion pour l'utilisateur 'sa'. Raison : le compte est désactivé
Alors que le compte sa est activé et a tout les droits.
Si je remplace user id par mon login Windows et password = par mon mot de passe un autre message d'erreur apparait :
Échec de l'ouverture de session de l'utilisateur 'mon compte'...
Je peut même taper le compte administrateur du domaine il ne vois rien exemple :
Public cn1 As New SqlClient.SqlConnection("data source=192.168.X.X;initial catalog=Intranet clients;persist security info=false;user id=administrateur;password=PASS DU DOMAINE
Erreur : Échec de l'ouverture de session de l'utilisateur 'administrateur'
si dans la ligne de commande string je tape le nom du domaine\administrateur l'erreur est :
Erreur : Échec de l'ouverture de session de l'utilisateur 'nomdudomaine\administrateur' je suis presque certain qu'il ne voit pas que c'est un domaine.
Quelqu'un aurait t-il une idée? je suis actuellement bloqué sur ce problème depuis deux jours...
olkain
Messages postés21Date d'inscriptionlundi 19 mai 2008StatutMembreDernière intervention30 mai 2010 23 oct. 2009 à 11:29
OOPS! Deux jour de recherche pour rien je suis désolé d'avoir posté ce sujet.
Le compte sa été belle et bien désactivé... Le problème c'est que je n'y connaissait rien en SQL :D
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 23 oct. 2009 à 18:46
Pour info :
- l'authentification Windows ne peut (normalement) fonctionner que si le poste serveur et le poste client sont sur un domaine, sur le même domaine, et que les sessions ouvertes sont des sessions ouvertes sur ce domaine.
Dans tous les autres cas, ça ne doit (normalement) pas marcher et il faudra alors utiliser l'authentification SQL.
- Dans la mesure du possible, l'authentification Windows est à préférer à l'authentification SQL car plus sécurisée.
- Dans le cas de l'authentfication SQL, les logins et mdp à utiliser sont ceux des utilisateurs créés dans SQL. Ces utilisateurs n'ont absolument rien à voir avec les utilisateurs Windows d'un domaine (mais il est tout à fait possible que ces utilisateurs soient créés dans SQL à partir des utilisateurs du domaine).
- Dans le cas de l'authentification SQL, il est conseiller de ne pas utiliser l'utilisateur sa (compte d'administration), mais de créer un utilisateur idoine avec uniquement les droits nécessaires (En allant plus loin, on peut aussi prendre l'habitude de désactiver le compte sa, et d'en créer un autre spécifique pour le remplacer et administrer le serveur).
[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 23 oct. 2009 à 18:51
J'ai oublier, sur MSSQLServer, :
- l'authentification Windows est toujours activée et n'est pas désactivable.
- l'authentification SQL est, par défaut, désactivée. Pour qu'elle soit utilisable, il faut qu'elle soit activée manuellement, soit à l'installation, soit après installation en administrant le serveur (nécessite un redémarrage du moteur SQL)
- Suivant les éditions de MSSQLServer, il faudra en plus activer les connections distantes qui ne sont pas toujours activées par défaut (Edition Developper ou Express , par exemple), pour que le serveur SQL soit accessible
depuis un poste autre que le serveur lui-même
[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i