Showing posts with label logging. Show all posts
Showing posts with label logging. Show all posts

Monday, March 19, 2012

Auditing without having to use SQL Profiler

I want to audit users logging on/off, creating/dropping/modifying
objects, etc, etc.
I know this can all be done using SQL Profiler, however this requires
SQL Profiler to be running all the time.
Are there any database system tables which hold this sort of
information, i.e. modified date of objects, etc, so that I can
schedule jobs to monitor user activity, as and when I want? (This
sort of thing can be done in Oracle)
I have looked at sysobjects and there is only create date in there.
You could trace using trace stored procedures. No need to use Profiler. More
info and code at:
http://vyaskn.tripod.com/server_side...sql_server.htm
HTH,
Vyas, MVP (SQL Server)
http://vyaskn.tripod.com/
Is .NET important for a database professional?
http://vyaskn.tripod.com/poll.htm
"Dipak Patel" <dipak99@.hotmail.com> wrote in message
news:30bbec2c.0406040636.3ae9786f@.posting.google.c om...
I want to audit users logging on/off, creating/dropping/modifying
objects, etc, etc.
I know this can all be done using SQL Profiler, however this requires
SQL Profiler to be running all the time.
Are there any database system tables which hold this sort of
information, i.e. modified date of objects, etc, so that I can
schedule jobs to monitor user activity, as and when I want? (This
sort of thing can be done in Oracle)
I have looked at sysobjects and there is only create date in there.
|||OK thanks for that. i will try it out at some point.
"Narayana Vyas Kondreddi" <answer_me@.hotmail.com> wrote in message news:<#I62DHkSEHA.3812@.TK2MSFTNGP11.phx.gbl>...
> You could trace using trace stored procedures. No need to use Profiler. More
> info and code at:
> http://vyaskn.tripod.com/server_side...sql_server.htm
> --
> HTH,
> Vyas, MVP (SQL Server)
> http://vyaskn.tripod.com/
> Is .NET important for a database professional?
> http://vyaskn.tripod.com/poll.htm
>
> "Dipak Patel" <dipak99@.hotmail.com> wrote in message
> news:30bbec2c.0406040636.3ae9786f@.posting.google.c om...
> I want to audit users logging on/off, creating/dropping/modifying
> objects, etc, etc.
> I know this can all be done using SQL Profiler, however this requires
> SQL Profiler to be running all the time.
> Are there any database system tables which hold this sort of
> information, i.e. modified date of objects, etc, so that I can
> schedule jobs to monitor user activity, as and when I want? (This
> sort of thing can be done in Oracle)
> I have looked at sysobjects and there is only create date in there.

Auditing without having to use SQL Profiler

I want to audit users logging on/off, creating/dropping/modifying
objects, etc, etc.
I know this can all be done using SQL Profiler, however this requires
SQL Profiler to be running all the time.
Are there any database system tables which hold this sort of
information, i.e. modified date of objects, etc, so that I can
schedule jobs to monitor user activity, as and when I want? (This
sort of thing can be done in Oracle)
I have looked at sysobjects and there is only create date in there.You could trace using trace stored procedures. No need to use Profiler. More
info and code at:
http://vyaskn.tripod.com/server_side_tracing_in_sql_server.htm
--
HTH,
Vyas, MVP (SQL Server)
http://vyaskn.tripod.com/
Is .NET important for a database professional?
http://vyaskn.tripod.com/poll.htm
"Dipak Patel" <dipak99@.hotmail.com> wrote in message
news:30bbec2c.0406040636.3ae9786f@.posting.google.com...
I want to audit users logging on/off, creating/dropping/modifying
objects, etc, etc.
I know this can all be done using SQL Profiler, however this requires
SQL Profiler to be running all the time.
Are there any database system tables which hold this sort of
information, i.e. modified date of objects, etc, so that I can
schedule jobs to monitor user activity, as and when I want? (This
sort of thing can be done in Oracle)
I have looked at sysobjects and there is only create date in there.|||OK thanks for that. i will try it out at some point.
"Narayana Vyas Kondreddi" <answer_me@.hotmail.com> wrote in message news:<#I62DHkSEHA.3812@.TK2MSFTNGP11.phx.gbl>...
> You could trace using trace stored procedures. No need to use Profiler. More
> info and code at:
> http://vyaskn.tripod.com/server_side_tracing_in_sql_server.htm
> --
> HTH,
> Vyas, MVP (SQL Server)
> http://vyaskn.tripod.com/
> Is .NET important for a database professional?
> http://vyaskn.tripod.com/poll.htm
>
> "Dipak Patel" <dipak99@.hotmail.com> wrote in message
> news:30bbec2c.0406040636.3ae9786f@.posting.google.com...
> I want to audit users logging on/off, creating/dropping/modifying
> objects, etc, etc.
> I know this can all be done using SQL Profiler, however this requires
> SQL Profiler to be running all the time.
> Are there any database system tables which hold this sort of
> information, i.e. modified date of objects, etc, so that I can
> schedule jobs to monitor user activity, as and when I want? (This
> sort of thing can be done in Oracle)
> I have looked at sysobjects and there is only create date in there.

Auditing without having to use SQL Profiler

I want to audit users logging on/off, creating/dropping/modifying
objects, etc, etc.
I know this can all be done using SQL Profiler, however this requires
SQL Profiler to be running all the time.
Are there any database system tables which hold this sort of
information, i.e. modified date of objects, etc, so that I can
schedule jobs to monitor user activity, as and when I want? (This
sort of thing can be done in Oracle)
I have looked at sysobjects and there is only create date in there.You could trace using trace stored procedures. No need to use Profiler. More
info and code at:
http://vyaskn.tripod.com/server_sid..._sql_server.htm
--
HTH,
Vyas, MVP (SQL Server)
http://vyaskn.tripod.com/
Is .NET important for a database professional?
http://vyaskn.tripod.com/poll.htm
"Dipak Patel" <dipak99@.hotmail.com> wrote in message
news:30bbec2c.0406040636.3ae9786f@.posting.google.com...
I want to audit users logging on/off, creating/dropping/modifying
objects, etc, etc.
I know this can all be done using SQL Profiler, however this requires
SQL Profiler to be running all the time.
Are there any database system tables which hold this sort of
information, i.e. modified date of objects, etc, so that I can
schedule jobs to monitor user activity, as and when I want? (This
sort of thing can be done in Oracle)
I have looked at sysobjects and there is only create date in there.|||OK thanks for that. i will try it out at some point.
"Narayana Vyas Kondreddi" <answer_me@.hotmail.com> wrote in message news:<#I62DHkSEHA.3812@.TK
2MSFTNGP11.phx.gbl>...
> You could trace using trace stored procedures. No need to use Profiler. Mo
re
> info and code at:
> http://vyaskn.tripod.com/server_sid..._sql_server.htm
> --
> HTH,
> Vyas, MVP (SQL Server)
> http://vyaskn.tripod.com/
> Is .NET important for a database professional?
> http://vyaskn.tripod.com/poll.htm
>
> "Dipak Patel" <dipak99@.hotmail.com> wrote in message
> news:30bbec2c.0406040636.3ae9786f@.posting.google.com...
> I want to audit users logging on/off, creating/dropping/modifying
> objects, etc, etc.
> I know this can all be done using SQL Profiler, however this requires
> SQL Profiler to be running all the time.
> Are there any database system tables which hold this sort of
> information, i.e. modified date of objects, etc, so that I can
> schedule jobs to monitor user activity, as and when I want? (This
> sort of thing can be done in Oracle)
> I have looked at sysobjects and there is only create date in there.

Sunday, March 11, 2012

Auditing Failed Logins

Hi,

I need to be able to get info about failed login attempts which need to be running all the time and logging info such as hostname , application name, host machine, etc. The best way I can see to do this is by crerating a trace. Then loading the info from the trace into a table for later use by using fn_trace_gettable. But this requires that the trace be stopped and the definition removed for the trace file to be populated.

Is there a way to be able to log this info constantly into a table without having to stop and then recreate another trace. Also it requires that the table created by the function is dropped.

Anyone any idears?

Thanks

Hello,

What version of SQL Server are you using? If 2005, you have the option of using server-level triggers.

Cheers,

Rob

|||

Hi,

Thanks for your reply. We are using 2000.

Thanks

Bob

|||

With 2000, unless you are using a 3rd party product, then you can only get that information with Profiler. There's a reason that you don't see that information with SQL Server though: it's so easy to spoof/change the hostname/appname information that it's a joke. Those are just ADO connection string values; you can set them to anything you want so I wouldn't want to make critical decisions like "Should I fire Bob over his failed logins?" over it.

Check out my SQL Server 2005 Video Tutorials: http://www.learnsqlserver.com/

|||

Hi Bob,

Actually, if this information is crucial, you can enable C2 auditing on the mssql instance...although this should not be done without a thorough understanding of the concequences (performance being one of those considerations).

Have a look at the below links to get started:

http://www.microsoft.com/technet/prodtechnol/sql/2000/maintain/sqlc2.mspx

https://www.microsoft.com/technet/security/prodtech/sqlserver/sql2kaud.mspx

Cheers,

Rob

Wednesday, March 7, 2012

Audit log not logging

As there is two types of auditing, have a look at the
following article
http://msdn.microsoft.com/library/default.asp?
url=/library/en-us/adminsql/ad_security_2ard.asp, if its
C2 auditing then it needs to be used in the same line as
starting your SQL Server service.
Peter
"Denial ain't just a river in Egypt."
Mark Twain

>--Original Message--
>Thank you for your time.
>I have a database that i need to have auditing on. The
database was moved
>to a larger server. I had auditing on before the move,
but now in my SQL
>Sercer audit log I only have the error message 15457
Severity: 0, State: 1.
>I need auditing on for this database, and have not been
able to find
>anything online that explaines what might have caused the
logging to stop or
>how to fix this issue. The users can still login, but
SQL Server isn't
>auditing it anymore.
>Thank you again for your time.
>.
>
Thank you for the article. That is what I was trying to audit. I had the
auditing working before the database was moved, but now I only get the error
message in the audit log. I didn't know about the SQL Profiler before.
Thanks for pointing that out.
"Peter The Spate" wrote:

> As there is two types of auditing, have a look at the
> following article
> http://msdn.microsoft.com/library/default.asp?
> url=/library/en-us/adminsql/ad_security_2ard.asp, if its
> C2 auditing then it needs to be used in the same line as
> starting your SQL Server service.
> Peter
> "Denial ain't just a river in Egypt."
> Mark Twain
>
> database was moved
> but now in my SQL
> Severity: 0, State: 1.
> able to find
> logging to stop or
> SQL Server isn't
>

Audit log not logging

Thank you for your time.
I have a database that i need to have auditing on. The database was moved
to a larger server. I had auditing on before the move, but now in my SQL
Sercer audit log I only have the error message 15457 Severity: 0, State: 1.
I need auditing on for this database, and have not been able to find
anything online that explaines what might have caused the logging to stop or
how to fix this issue. The users can still login, but SQL Server isn't
auditing it anymore.
Thank you again for your time.
What were you auditing? Perhaps there was a startup param set on your old
server. Perhaps you chose to auditing logins via Enterprise Manager (right
click on the server name, properties, Security tab).
Keith
"Marc M" <Marc M@.discussions.microsoft.com> wrote in message
news:A89E9DBD-9C96-400B-8208-6AA7EF86141F@.microsoft.com...
> Thank you for your time.
> I have a database that i need to have auditing on. The database was moved
> to a larger server. I had auditing on before the move, but now in my SQL
> Sercer audit log I only have the error message 15457 Severity: 0, State:
1.
> I need auditing on for this database, and have not been able to find
> anything online that explaines what might have caused the logging to stop
or
> how to fix this issue. The users can still login, but SQL Server isn't
> auditing it anymore.
> Thank you again for your time.
|||Thank you for the suggestion to check the old server, I'll look at that to
see if there is anything running that we didn't get moved.
We were trying to audit the logins and logouts of the users of the database.
I already have in place the auditing through Enterprise Manager, and were
looking at it throught the logs associated with that. I really apprecitate
the level of detail provided on how to activeate it and would apprecitate
that level of detail on the solution for why we are only getting the error
15457 in those logs.
Thank you for your help.
"Keith Kratochvil" wrote:

> What were you auditing? Perhaps there was a startup param set on your old
> server. Perhaps you chose to auditing logins via Enterprise Manager (right
> click on the server name, properties, Security tab).
> --
> Keith
>
> "Marc M" <Marc M@.discussions.microsoft.com> wrote in message
> news:A89E9DBD-9C96-400B-8208-6AA7EF86141F@.microsoft.com...
> 1.
> or
>

Audit log not logging

Thank you for your time.
I have a database that i need to have auditing on. The database was moved
to a larger server. I had auditing on before the move, but now in my SQL
Sercer audit log I only have the error message 15457 Severity: 0, State: 1.
I need auditing on for this database, and have not been able to find
anything online that explaines what might have caused the logging to stop or
how to fix this issue. The users can still login, but SQL Server isn't
auditing it anymore.
Thank you again for your time.As there is two types of auditing, have a look at the
following article
http://msdn.microsoft.com/library/default.asp?
url=/library/en-us/adminsql/ad_security_2ard.asp, if its
C2 auditing then it needs to be used in the same line as
starting your SQL Server service.
Peter
"Denial ain't just a river in Egypt."
Mark Twain
>--Original Message--
>Thank you for your time.
>I have a database that i need to have auditing on. The
database was moved
>to a larger server. I had auditing on before the move,
but now in my SQL
>Sercer audit log I only have the error message 15457
Severity: 0, State: 1.
>I need auditing on for this database, and have not been
able to find
>anything online that explaines what might have caused the
logging to stop or
>how to fix this issue. The users can still login, but
SQL Server isn't
>auditing it anymore.
>Thank you again for your time.
>.
>|||What were you auditing? Perhaps there was a startup param set on your old
server. Perhaps you chose to auditing logins via Enterprise Manager (right
click on the server name, properties, Security tab).
--
Keith
"Marc M" <Marc M@.discussions.microsoft.com> wrote in message
news:A89E9DBD-9C96-400B-8208-6AA7EF86141F@.microsoft.com...
> Thank you for your time.
> I have a database that i need to have auditing on. The database was moved
> to a larger server. I had auditing on before the move, but now in my SQL
> Sercer audit log I only have the error message 15457 Severity: 0, State:
1.
> I need auditing on for this database, and have not been able to find
> anything online that explaines what might have caused the logging to stop
or
> how to fix this issue. The users can still login, but SQL Server isn't
> auditing it anymore.
> Thank you again for your time.|||Thank you for the article. That is what I was trying to audit. I had the
auditing working before the database was moved, but now I only get the error
message in the audit log. I didn't know about the SQL Profiler before.
Thanks for pointing that out.
"Peter The Spate" wrote:
> As there is two types of auditing, have a look at the
> following article
> http://msdn.microsoft.com/library/default.asp?
> url=/library/en-us/adminsql/ad_security_2ard.asp, if its
> C2 auditing then it needs to be used in the same line as
> starting your SQL Server service.
> Peter
> "Denial ain't just a river in Egypt."
> Mark Twain
>
> >--Original Message--
> >Thank you for your time.
> >I have a database that i need to have auditing on. The
> database was moved
> >to a larger server. I had auditing on before the move,
> but now in my SQL
> >Sercer audit log I only have the error message 15457
> Severity: 0, State: 1.
> >I need auditing on for this database, and have not been
> able to find
> >anything online that explaines what might have caused the
> logging to stop or
> >how to fix this issue. The users can still login, but
> SQL Server isn't
> >auditing it anymore.
> >Thank you again for your time.
> >.
> >
>|||Thank you for the suggestion to check the old server, I'll look at that to
see if there is anything running that we didn't get moved.
We were trying to audit the logins and logouts of the users of the database.
I already have in place the auditing through Enterprise Manager, and were
looking at it throught the logs associated with that. I really apprecitate
the level of detail provided on how to activeate it and would apprecitate
that level of detail on the solution for why we are only getting the error
15457 in those logs.
Thank you for your help.
"Keith Kratochvil" wrote:
> What were you auditing? Perhaps there was a startup param set on your old
> server. Perhaps you chose to auditing logins via Enterprise Manager (right
> click on the server name, properties, Security tab).
> --
> Keith
>
> "Marc M" <Marc M@.discussions.microsoft.com> wrote in message
> news:A89E9DBD-9C96-400B-8208-6AA7EF86141F@.microsoft.com...
> > Thank you for your time.
> > I have a database that i need to have auditing on. The database was moved
> > to a larger server. I had auditing on before the move, but now in my SQL
> > Sercer audit log I only have the error message 15457 Severity: 0, State:
> 1.
> > I need auditing on for this database, and have not been able to find
> > anything online that explaines what might have caused the logging to stop
> or
> > how to fix this issue. The users can still login, but SQL Server isn't
> > auditing it anymore.
> > Thank you again for your time.
>

Friday, February 24, 2012

Attention to details

Well I made a bussiness object for registering users as well as logging them in. I dont know if my bussiness obect is screwed up or if its the database, or the SQL syntax or what. Please take a look at this. I am not getting any error messages, but nothing is being added to the server. I am using MSDE for the SQL Server.

Here's my bussiness object:

Imports System
Imports System.Data
imports System.Data.oledb

NameSpace LoveShare

Public Class UserDetails
public UserID AS Integer
public FirstName AS String
public LastName AS String
public UserName AS string
public Password AS String
public Address AS String
public City AS String
public State AS String
public Zip As Integer
public Email AS String
End Class

Public Class User

Private objConn As New oledbConnection("Provider=sqloledb;Data Source=GARAGESALE\LOVESHARE;Initial Catalog=LoveShare1;User Id=sa;Password=notonthispost;")

Public function Login(strUsername AS String, strPassword As String) As Integer
dim intID as integer
dim objparam AS new oledbparameter
dim objcmd AS oledbCommand

objCmd = new oledbCommand("dbo.SPLoginUser", objconn)
objcmd.commandtype = commandtype.Storedprocedure

objparam = New oledbparameter("@.UserName", oledbtype.Char)
objParam.Value = strUserName
objCmd.Parameters.Add(objParam)

objParam = New oledbParameter("@.Password", OleDbType.Char)
objParam.Value = strPassword
objCmd.Parameters.Add(ObjParam)

Try
objConn.Open
intID = CType(objCmd.ExecuteScalar, Integer)
objConn.Close
Catch e As Exception
Throw e
End Try

If intID.toString = "" Then
return 0
End if
Return intID
end function

Public Sub AddUser(objUser As UserDetails)
Dim intId as integer
Dim objReader As oledbdataReader
Dim objCmdID As New oledbCommand("SELECT MAX(userID) FROM tblUsers", objconn)
Dim objcmd AS New oleDBCommand("spAddUser", objConn)
Dim objparam AS OleDbParameter
objCmd.CommandType = CommandType.StoredProcedure

objParam = New oleDbParameter("@.FirstName", oledbtype.Char)
objParam.value = objuser.FirstName
objCmd.Parameters.add(objParam)

objParam = New oleDbParameter("@.LastName", oledbtype.Char)
objParam.value = objuser.LastName
objCmd.Parameters.add(objParam)

objParam = new oleDbParameter("@.UserName", oledbtype.Char)
objParam.Value = objUser.UserName
objCmd.Parameters.Add(objParam)

objParam = New oleDbParameter("@.Password", oledbtype.Char)
objParam.value = objuser.Password
objCmd.Parameters.add(objParam)

objParam = New oleDbParameter("@.Email", oledbtype.Char)
objParam.value = objuser.Email
objCmd.Parameters.add(objParam)

objParam = New oleDbParameter("@.Address", oledbtype.Char)
objParam.value = objuser.Address
objCmd.Parameters.add(objParam)

objParam = New oleDbParameter("@.City", oledbtype.Char)
objParam.value = objuser.City
objCmd.Parameters.add(objParam)

objParam = New oleDbParameter("@.State", oledbtype.Char)
objParam.value = objuser.State
objCmd.Parameters.add(objParam)

objParam = New oleDbParameter("@.Zip", oledbtype.Integer)
objParam.value = objuser.Zip
objCmd.Parameters.add(objParam)

Try
objConn.Open
ObjCmd.ExecuteNonQuery
objUser.UserID = CType(objCmdID.ExecuteScalar, Integer)
objConn.Close
Catch e AS Exception
Throw e
End try

If objUser.UserID.ToString = "" then
objuser.UserID = 25
End if
End Sub
End Class
End NameSpace

Here's is my stored procedure for the registration:

CREATE PROCEDURE [dbo].[SPAddUser]
@.FirstName VarChar(255),
@.LastName VarChar(255),
@.UserName VarChar(255),
@.Password VarChar(255),
@.Email VarChar(255),
@.Address VarChar(255) ,
@.City VarChar(255),
@.State VarChar(255) ,
@.Zip [INT]

AS
INSERT INTO tblUsers (FirstName, LastName, UserName, Password, Email, Address, City, State, Zip)
VALUES (@.FirstName, @.LAstName, @.UserName, @.Password, @.Email, @.Address, @.City, @.State, @.Zip)
GO

And here is the actual registration page


<%@. Page Language="VB" %>
<%@. Register tagPrefix="LoveShare" TagName="Header" src="http://pics.10026.com/?src=head.ascx" %>
<%@. Register tagPrefix="LoveShare" TagName="Menu" src="http://pics.10026.com/?src=Men.ascx" %>
<%@. Register tagPrefix="LoveShare" TagName="Stats" src="http://pics.10026.com/?src=Stats.ascx" %>
<%@. Register tagPrefix="LoveShare" TagName="Footer" src="http://pics.10026.com/?src=foot.ascx" %>
<%@. Import Namespace="system" %>
<%@. Import NameSpace="System.Data" %>
<%@. Import NameSpace="LoveShare" %
<script runat="server">
Public sub Submit(sender as object, e as eventargs)
If Page.IsValid then

dim objuserdetails as New LoveShare.UserDetails
dim objuser As New LoveShare.User

objuserDetails.FirstName=tbFirstName.Text
objuserDetails.LastName=tbLastName.Text
objUserDetails.Username=tbUserName.Text
objuserDetails.Password=tbPassword.Text
objUserDetails.Email=tbEmail.Text
objUserDetails.Address=tbAddress.Text
objUserDetails.City=tbCity.Text
objUserDetails.State=tbState.Text
objuserDetails.Zip=tbState.Text

ObjUser.AddUser(objUserDetails)

Session("UserID") = objUserDetails.UserID
FormsAuthentication.SetAuthCookie(objUserDetails.UserID, false)
Response.Redirect("index.aspx")
else
lblMessage.text="Information entered incorrectly"
End If
End Sub

</Script
<html>
<body BGCOLOR="00ccFF">
<Table Width="800">
<tr>
<td>
<table cellpadding="0" cellspacing="0" width="100%">
<tr>
<td>
<LoveShare:Header runat="server" />
</td>
</tr>
<tr
<td>
<Table cellpadding="0" cellspacing="15" Width="800">
<tr>
<td>

</td>
<td>
<td>
<form runat="server">
<table cellpadding="3" cellspacing="0" width="100%">
<tr>
<td colspan="2" Align="center">
<Font size="6">Sign Up Today!<BR><BR></Font>
</td>
</tr>
<tr>
<td Align="Center">
<Font color="red">
<asp:label id="lblMessage" runat="server" />
</font>
</td>
</tr
<tr>
<td Align="right">First Name:</td>
<td Align="Left"><asp:textbox id="tbFirstName" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbFirstName" ErrorMessage="First Name Required" Text="Forgot First Name" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">Last Name:</Td>
<td Align="Left"><asp:textbox id="tbLastName" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbLastName" ErrorMessage="Last Name Required" Text="Forgot Last Name" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">Desired UserName:</td>
<td Align="Left"><asp:textbox id="tbUserName" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbUserName" ErrorMessage="UserName required" Text="Forgot UserName" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">Password:</td>
<td Align="Left"><asp:textbox id="tbPassword" Textmode="Password" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbPassword" ErrorMessage="Password Required" Text="Forgot Password" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">Verify Password:</td>
<td Align="Left"><asp:textbox id="tbVPassword" Textmode="password" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbVPassword" ErrorMessage="Verify Password" Text="Forgot to verify Password" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">Email Address:</td>
<td Align="Left"><asp:textbox id="tbEmail" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbEmail" ErrorMessage="Email address required" Text="Forgot Email address" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">Verify Email Address:</td>
<td Align="Left"><asp:textbox id="tbVEmail" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbVEmail" ErrorMessage="Must verify Email address" Text="Verify Email address" Display="Dynamic"/>
</td>
</tr>
<td Align="right">Street Address</td>
<td Align="Left"><asp:textbox id="tbAddress" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbAddress" ErrorMessage="Street Address Required" Text="Forgot Address" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">City:</td>
<td Align="Left"><asp:textbox id="tbCity" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbCity" ErrorMessage="City Required" Text="Forgot City" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">State:</td>
<td Align="Left"><asp:textbox id="tbState" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbState" ErrorMessage="State Required" Text="Forgot State" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right">Zip:</td>
<td Align="Left"><asp:textbox id="tbZip" runat="server" />
<asp:requiredfieldValidator runat="server" Controltovalidate="tbZip" ErrorMessage="Zip Code Required" Text="Forgot Zip" Display="Dynamic"/>
</td>
</tr>
<tr>
<td Align="right"> </td>
<td Align="Left"><asp:button id="btsignup" text="Sign Up" onclink="submit" runat="server" />
</tr>
</table>
</form
</td>
<td>

</td>
</tr>
</table>
</td
</tr>
</tr>
<td
</td>
</tr
<tr>
<td>
<LoveShare:Footer runat="server" />
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html

Please help, I cannot figure out what is wrong(1) i havent gone through youe entire code but make sure you are passing in values in the same order as they appear in your query since OLEDB parameters are positional.
(2) in this sql stmt :

INSERT INTO tblUsers (FirstName, LastName, UserName, Password, Email, Address, City, State, Zip)

username, password, email etc are keywords. use [UserName], [Password], [Email]..etc

hth