Solved

Connecting to SQL 2005 database using Domain Account

Posted on 2010-09-16
4
303 Views
Last Modified: 2012-08-13
I am trying to connect to a database on SQL 2005 using the only thing that has perms to it right now -- a windows account.   It's a service account though, not the IUSR account on the web server.  Anyone have an example of a working ASP script to connect to a SQL 2005 database with a domain service account?

Thanks in advance,
TWB
0
Comment
Question by:TWB_Systems
  • 2
4 Comments
 
LVL 15

Expert Comment

by:AmmarR
ID: 33697324
for your particular site, change the IIS settings, and make it instead of anonymous access authentication method, change it to Integrated windows authentication.

or if you cant do that

you can login with your code as a different windows user and access sql.

check code below



public sub connecttosql()

        If impersonateValidUser('validuser', _

        'validdomain', 'validpassword') Then

            'Insert your code that runs under the security context of a specific user here.

            ' insert the code to connect to sql under this user

            undoImpersonation()

        Else

            'Your impersonation failed. Therefore, include a fail-safe mechanism here.

        End If

end sub





    Public Function impersonateValidUser(ByVal userName As String, _

    ByVal domain As String, ByVal password As String) As Boolean



        Dim tempWindowsIdentity As WindowsIdentity

        Dim token As IntPtr = IntPtr.Zero

        Dim tokenDuplicate As IntPtr = IntPtr.Zero

        impersonateValidUser = False



        If RevertToSelf() Then

            If LogonUserA(userName, domain, password, LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, token) <> 0 Then

                If DuplicateToken(token, 2, tokenDuplicate) <> 0 Then

                    tempWindowsIdentity = New WindowsIdentity(tokenDuplicate)

                    impersonationContext = tempWindowsIdentity.Impersonate()

                    If Not impersonationContext Is Nothing Then

                        impersonateValidUser = True

                    End If

                End If

            End If

        End If

        If Not tokenDuplicate.Equals(IntPtr.Zero) Then

            CloseHandle(tokenDuplicate)

        End If

        If Not token.Equals(IntPtr.Zero) Then

            CloseHandle(token)

        End If

    End Function

Open in new window

0
 
LVL 22

Expert Comment

by:Om Prakash
ID: 33698763
Please check the following link which contains all the options for connecting to SQL server 2005
http://www.connectionstrings.com/sql-server-2005
0
 
LVL 22

Accepted Solution

by:
Om Prakash earned 500 total points
ID: 33698771
Example:

dim conn

strConn = "Driver={SQL Server};Server=Server_name;Database=database_name;Trusted_Connection=Yes;"

Set conn = Server.CreateObject("ADODB.Connection")

conn.ConnectionString= strConn

conn.Open

Open in new window

0
 

Author Closing Comment

by:TWB_Systems
ID: 33737170
Not the route I wanted to go, but the route I ended up taking.
0

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

I was asked about the differences between classic ASP and ASP.NET, so let me put them down here, for reference: Let's make the introductions... Classic ASP was launched by Microsoft in 1998 and dynamically generate web pages upon user interact…
This article is the result of a quest to better understand Task Scheduler 2.0 and all the newer objects available in vbscript in this version over  the limited options we had scripting in Task Scheduler 1.0.  As I started my journey of knowledge I f…
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now