0

I am using SQL Server Express 2014, and I currenly have a (probably) very stupid problem with Windows Authentication. I have a AD server, a MS-SQL server and a Client, where everything was installed from scratch to test in VMs.

I want access to be through Active Directory.

  • I go in the SQL Server Management studio
  • In Security/Connections, I add the new User
  • While adding him in connection, I map him towards my database as db_datareader and db_datawriter
  • In my database properties, I check that the user really have the Explicit rights for at least CONNECT, SELECT, INSERT, UPDATE, DELETE, and he does

I test my setup with a very small VBA macro (in Microsoft Office), which's the following :

Sub OpenConn()
    Dim ConnString As String
    Dim DB_Address As String
    Dim DB_Name As String

    DB_Address = "Computer1\SQLEXPRESS"
    DB_Name = "MyDB"

    ConnString = "Provider=SQLOLEDB;Data Source=" & DB_Address & ";" & _
                 "Initial Catalog=" & DB_Name & ";" & _
                 "Integrated Security=SSPI;"

    Set DB = New ADODB.Connection
    DB.Open ConnString
End Sub

With the user that installed SQL Express, it works perfectly.(I'm doing a small SELECT as test, and works as intended)
With the user I previously added, It tells me that my server can't be joined.

Weird thing is that, when I check my connections logs in SQL Server, it tells me that the connection succedeed.

Log of my connection success with the account that INSTALLED the Server (Sorry, the log's in french)

08/12/2015 23:52:11,Microsoft-Windows-Security-Auditing,Réussite de l'audit,L’ouverture de session d’un compte s’est correctement déroulée.<nl/><nl/>Sujet :<nl/>   ID de sécurité :        S-1-0-0<nl/>    Nom du compte :     -<nl/>  Domaine du compte :     -<nl/>  ID d’ouverture de session :     0x0<nl/><nl/>Type d’ouverture de session :          3<nl/><nl/>Nouvelle ouverture de session :<nl/> ID de sécurité :        S-1-5-21-2814706995-1848420457-3208371447-1105<nl/> Nom du compte :     cgl<nl/>    Domaine du compte :     TEST<nl/>   ID d’ouverture de session :     0x53172f<nl/>   GUID d’ouverture de session :       {00000000-0000-0000-0000-000000000000}<nl/><nl/>Informations sur le processus :<nl/>    ID du processus :       0x0<nl/>    Nom du processus :      -<nl/><nl/>Informations sur le réseau :<nl/>    Nom de la station de travail :  COMP2<nl/>  Adresse du réseau source :  -<nl/>  Port source :       -<nl/><nl/>Informations détaillées sur l’authentification :<nl/>    Processus d’ouverture de session :      NtLmSsp <nl/>   Package d’authentification :    NTLM<nl/>   Services en transit :   -<nl/>  Nom du package (NTLM uniquement) :  NTLM V2<nl/>    Longueur de la clé :        128<nl/><nl/>Cet événement est généré lors de la création d’une ouverture de session. Il est généré sur l’ordinateur sur lequel l’ouverture de session a été effectuée.<nl/><nl/>Le champ Objet indique le compte sur le système local qui a demandé l’ouverture de session. Il s’agit le plus souvent d’un service<c/> comme le service Serveur<c/> ou un processus local tel que Winlogon.exe ou Services.exe.<nl/><nl/>Le champ Type d’ouverture de session indique le type d’ouverture de session qui s’est produit. Les types les plus courants sont 2 (interactif) et 3 (réseau).<nl/><nl/>Le champ Nouvelle ouverture de session indique le compte pour lequel la nouvelle ouverture de session a été créée<c/> par exemple<c/> le compte qui s’est connecté.<nl/><nl/>Les champs relatifs au réseau indiquent la provenance d’une demande d’ouverture de session à distance. Le nom de la station de travail n’étant pas toujours disponible<c/> peut être laissé vide dans certains cas.<nl/><nl/>Les champs relatifs aux informations d’authentification fournissent des détails sur cette demande d’ouverture de session spécifique.<nl/>    - Le GUID d’ouverture de session est un identificateur unique pouvant servir à associer cet événement à un événement KDC .<nl/> - Les services en transit indiquent les services intermédiaires qui ont participé à cette demande d’ouverture de session.<nl/>  - Nom du package indique quel est le sous-protocole qui a été utilisé parmi les protocoles NTLM.<nl/>   - La longueur de la clé indique la longueur de la clé de session générée. Elle a la valeur 0 si aucune clé de session n’a été demandée.,(12544),4624,,Comp1
08/12/2015 23:52:11,Microsoft-Windows-Security-Auditing,Réussite de l'audit,Privilèges spéciaux attribués à la nouvelle ouverture de session.<nl/><nl/>Sujet :<nl/> ID de sécurité :        S-1-5-21-2814706995-1848420457-3208371447-1105<nl/> Nom du compte :     cgl<nl/>    Domaine du compte :     TEST<nl/>   ID d’ouverture de session :     0x53172f<nl/><nl/>Privilèges :      SeSecurityPrivilege<nl/>            SeBackupPrivilege<nl/>          SeRestorePrivilege<nl/>         SeTakeOwnershipPrivilege<nl/>           SeDebugPrivilege<nl/>           SeSystemEnvironmentPrivilege<nl/>           SeLoadDriverPrivilege<nl/>          SeImpersonatePrivilege,(12548),4672,,Comp1
08/12/2015 23:52:11,Logon,Inconnu,Login succeeded for user 'TEST\cgl'. Connection made using Windows authentication. [CLIENT : 192.168.152.170],,,,

It tells me that it gives special privileges to the new session (2nd line)

Now the login with the account that doesn't work

08/12/2015 23:51:36,Microsoft-Windows-Security-Auditing,Réussite de l'audit,L’ouverture de session d’un compte s’est correctement déroulée.<nl/><nl/>Sujet :<nl/>   ID de sécurité :        S-1-0-0<nl/>    Nom du compte :     -<nl/>  Domaine du compte :     -<nl/>  ID d’ouverture de session :     0x0<nl/><nl/>Type d’ouverture de session :          3<nl/><nl/>Nouvelle ouverture de session :<nl/> ID de sécurité :        S-1-5-21-2814706995-1848420457-3208371447-1111<nl/> Nom du compte :     cgl3<nl/>   Domaine du compte :     TEST<nl/>   ID d’ouverture de session :     0x52c0e4<nl/>   GUID d’ouverture de session :       {5F718665-B8B7-28B2-9D08-5DB2898F3FA2}<nl/><nl/>Informations sur le processus :<nl/>    ID du processus :       0x0<nl/>    Nom du processus :      -<nl/><nl/>Informations sur le réseau :<nl/>    Nom de la station de travail :  <nl/>   Adresse du réseau source :  192.168.152.170<nl/>    Port source :       49232<nl/><nl/>Informations détaillées sur l’authentification :<nl/>    Processus d’ouverture de session :      Kerberos<nl/>   Package d’authentification :    Kerberos<nl/>   Services en transit :   -<nl/>  Nom du package (NTLM uniquement) :  -<nl/>  Longueur de la clé :        0<nl/><nl/>Cet événement est généré lors de la création d’une ouverture de session. Il est généré sur l’ordinateur sur lequel l’ouverture de session a été effectuée.<nl/><nl/>Le champ Objet indique le compte sur le système local qui a demandé l’ouverture de session. Il s’agit le plus souvent d’un service<c/> comme le service Serveur<c/> ou un processus local tel que Winlogon.exe ou Services.exe.<nl/><nl/>Le champ Type d’ouverture de session indique le type d’ouverture de session qui s’est produit. Les types les plus courants sont 2 (interactif) et 3 (réseau).<nl/><nl/>Le champ Nouvelle ouverture de session indique le compte pour lequel la nouvelle ouverture de session a été créée<c/> par exemple<c/> le compte qui s’est connecté.<nl/><nl/>Les champs relatifs au réseau indiquent la provenance d’une demande d’ouverture de session à distance. Le nom de la station de travail n’étant pas toujours disponible<c/> peut être laissé vide dans certains cas.<nl/><nl/>Les champs relatifs aux informations d’authentification fournissent des détails sur cette demande d’ouverture de session spécifique.<nl/>  - Le GUID d’ouverture de session est un identificateur unique pouvant servir à associer cet événement à un événement KDC .<nl/> - Les services en transit indiquent les services intermédiaires qui ont participé à cette demande d’ouverture de session.<nl/>  - Nom du package indique quel est le sous-protocole qui a été utilisé parmi les protocoles NTLM.<nl/>   - La longueur de la clé indique la longueur de la clé de session générée. Elle a la valeur 0 si aucune clé de session n’a été demandée.,(12544),4624,,Comp1

I really don't understand this problem, or even what I'm doing wrong...

And I can't even seem to find answers on the net, meaning I'm probably searching for the wrong thing...

Can Anyone help me? Thanks in advance

Zawarudio
  • 31
  • 5

0 Answers0