Solved

Connecting to SQL 2005 database using Domain Account

Posted on 2010-09-16
4
307 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

Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Reg Exp to extract Url from string asp 12 35
Adding 1 the value of input "text" every 3 seconds 5 32
Ajax on ASP 2 31
JS to redirect to prev page 8 16
Over the years I have built up my own little library of code snippets that I refer to when programming or writing a script.  Many of these have come from the web or adaptations from snippets I find on the Web.  Periodically I add to them when I come…
With User Account Control (UAC) enabled in Windows 7, one needs to open an elevated Command Prompt in order to run scripts under administrative privileges. Although the elevated Command Prompt accomplishes the task, the question How to run as script…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

679 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