<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>SQLWebTools Work Item Rss Feed</title><link>http://www.codeplex.com/WorkItem/List.aspx?ProjectName=SQLWebTools</link><description>SQLWebTools Work Item Rss Description</description><item><title>COMMENTED ISSUE: Slow Performance</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=690</link><description>=== Opened by edle @ 5/15/2006 9:00:42 AM ===
 I saw extremely slow performance going from page to page in this process.  Like 30 seconds after clicking a link in some cases before the page changes.  Clicking "Manage Databases" took about 60 seconds to display my two databases.  Of course the server where those databases live has ~1,400 databases on it, but the hardware isn't a limiting factor.  Perhaps the query used to find the databases that I would want to manage could be tweaked for better perf.

=== Edited by terrydenham @ 5/15/2006 11:25:19 AM ===
The reason for the performance problem is SMO will give us all databases on the system, whether the user has access to those databases or not. To keep from getting errors when users try to access different databases, the code gets all databases on the server, and then we try to access 1 of the tables in the collection. Just by trying to access tables that we may/may not have permissions to causes SMO to pull back all table information. If this causes an exception, then we remove this database from the list of databases we have access to.

If there is a way to call Smo.Databases() and have SMO filter out the database that the user doesn't have access to, we'll use this. Or if we are fine showing the user 1400 databases, even though they may only have permission to a few then we can remove the access check.

I need either some technical guidance on whether SMO has the capability to do collection pruning based on the user's credentials, or guidance on whether it's ok to show the users 1400 databases even though they don't have permissions to these.

I will do some more digging to see if there is a better/more efficient way to check database permissions than trying to call database.Tables.Count.
=== Edited by terrydenham @ 5/15/2006 11:42:59 AM ===
I've changed the code from having to pull back every table object in each database and check if a table is accessible, to using the IsAccessible property on the database object. Now the code reads like this

foreach( Smo.Database db in dbc)
{
    if( db.IsAccessible) 
        dbCollection.Add(db);        
}
return dbCollection;
=== Edited by terrydenham @ 5/16/2006 7:27:51 AM ===
 --&gt; Issue type changed
I tried to create 1400 databases to test with but on my laptop SQL Server 2005 consumed 1.6GB with 1400 database and I'm close exceeding my physical memory limites before even opening up VS 2005, so I'm backing away from 1400 databases and going with around 800. Hopefull this will give me enough memory to test the two different approaches.
=== Edited by terrydenham @ 5/17/2006 1:51:34 PM ===
 --&gt; AssignedTo changed from edle to terrydenham
 --&gt; Issue type changed

=== Edited by terrydenham @ 5/19/2006 9:22:13 AM ===
 --&gt; Issue type changed Comments: ** Comment from web user: jebuskrust ** Why would someone use alpha (meaning buggy) software with a ms sql server that houses several thousand databases. :)? Next, usually a big part of lag can also come from the webserver side from having to create the access / error log files on the webserver itself. Since depending on how detailed you want the log to be, the successful resolution of a ip from a gethostname() function can take some time for the function to return a value to the webserver if your local area network's dns server is configured incorrectly (ie its missing IN PTR/IN A records and for the specific ip youre connecting from). Easy solution is on the server that youre connecting (if dns reverse dns isnt configured correclty) is to add to the hosts file your machine and the host its connecting from.80% of Operating systems use the host files in attempting to resolve dns on the local machine before making an attempt to query the primary and secondary ns's</description><author>jebuskrust</author><pubDate>Fri, 04 Aug 2006 13:59:17 GMT</pubDate><guid isPermaLink="false">COMMENTED ISSUE: Slow Performance 20060804015917P</guid></item><item><title>CREATED ISSUE: DataType nvarchar(max)</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=1273</link><description>There is a problema with sql queries, i can't load sql server data type nvarchar(max), i don't know if it's something i'm doing wrong or what, but i have tried another software and receive the same error, i think that is a problem of the software. In admin mode i try to create a table with this data type and i cannot do.
Please if you can repair this i will be very gratefully.
Sorry for my English, i'm from Argentina, and worst, a novice.
Thanks. </description><author>pcuaap</author><pubDate>Sat, 22 Jul 2006 19:32:17 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: DataType nvarchar(max) 20060722073217P</guid></item><item><title>CREATED ISSUE: login credentials cached</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=695</link><description>=== Opened by AliJas @ 5/29/2006 3:54:17 AM ===
If I act as a average stupid user, and use the back button to try to switch to a different database server. after login in I return to my previous server instead of the newly selected server.

this procedure only works correct if I explicitly choose "change credentials". (which is not available if I logged in on a SQL2000 server (with SQL authentication)). </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:57:18 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: login credentials cached 20060629055718P</guid></item><item><title>CREATED ISSUE: User administration Grid error</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=694</link><description>=== Opened by edle @ 5/15/2006 9:03:49 AM ===
Searched for user "marklium%" and it found the user I just created
Clicked on the username to administer the user and got this error:
============================================================

Server Error in '/SQLWebTools' Application.
--------------------------------------------------------------------------------

Unable to cast object of type 'System.Web.UI.WebControls.GridView' to type 'System.Web.UI.WebControls.LinkButton'. 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

 

Exception Details: System.InvalidCastException: Unable to cast object of type 'System.Web.UI.WebControls.GridView' to type 'System.Web.UI.WebControls.LinkButton'.

 

Source Error: 

Line 68:   int index = Convert.ToInt32(e.CommandArgument);
Line 69:   GridViewRow row = userGridView.Rows[index];
Line 70:   LinkButton userLinkButton = (LinkButton)e.CommandSource;
Line 71:   //string userName = userLinkButton.Text;
Line 72:   DataKey dk = userGridView.DataKeys[Convert.ToInt32(e.CommandArgument)];

Source File: d:\Data\UserSite\SQLWebTools\memberAdmin\manageUsers.aspx.cs    Line: 70 

 

Stack Trace: 


[InvalidCastException: Unable to cast object of type 'System.Web.UI.WebControls.GridView' to type 'System.Web.UI.WebControls.LinkButton'.]
   _default.OnUserGridViewRowCommand(Object sender, GridViewCommandEventArgs e) in d:\Data\UserSite\SQLWebTools\memberAdmin\manageUsers.aspx.cs:70
   System.Web.UI.WebControls.GridView.OnRowCommand(GridViewCommandEventArgs e) +105
   System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +76
   System.Web.UI.WebControls.GridView.RaisePostBackEvent(String eventArgument) +199
   System.Web.UI.WebControls.GridView.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +174
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint
============================================================ 

 

 


=== Edited by terrydenham @ 5/19/2006 9:24:01 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:56:27 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: User administration Grid error 20060629055627P</guid></item><item><title>CREATED ISSUE: Servername persists during same IE session even after logout of web tools</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=692</link><description>=== Opened by edle @ 5/15/2006 9:02:43 AM ===
Servername persists during same IE session even after logout of web tools

Start out logged into SQL web tools and connected to a SQL server.

Click logout
Click "Login Directly to SQL Server"
Login to a DIFFERENT SQL server
Get Welcome screen
Click Administration Tab
Server Properties box indicates you're connected to the server from the previous login rather than the server you entered for this session.

Workaround:  Close the IE browser and login to the desired SQL server.
=== Edited by terrydenham @ 5/19/2006 9:24:24 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:55:39 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Servername persists during same IE session even after logout of web tools 20060629055539P</guid></item><item><title>CREATED ISSUE: Index out of range</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=691</link><description>=== Opened by edle @ 5/15/2006 9:02:01 AM ===
When displaying the properties of the database there is an error next to the "Apply Updates" button that says "--&gt; Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index"
=== Edited by terrydenham @ 5/19/2006 9:22:31 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:54:51 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Index out of range 20060629055451P</guid></item><item><title>CREATED ISSUE: Slow Performance</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=690</link><description>=== Opened by edle @ 5/15/2006 9:00:42 AM ===
 I saw extremely slow performance going from page to page in this process.  Like 30 seconds after clicking a link in some cases before the page changes.  Clicking "Manage Databases" took about 60 seconds to display my two databases.  Of course the server where those databases live has ~1,400 databases on it, but the hardware isn't a limiting factor.  Perhaps the query used to find the databases that I would want to manage could be tweaked for better perf.

=== Edited by terrydenham @ 5/15/2006 11:25:19 AM ===
The reason for the performance problem is SMO will give us all databases on the system, whether the user has access to those databases or not. To keep from getting errors when users try to access different databases, the code gets all databases on the server, and then we try to access 1 of the tables in the collection. Just by trying to access tables that we may/may not have permissions to causes SMO to pull back all table information. If this causes an exception, then we remove this database from the list of databases we have access to.

If there is a way to call Smo.Databases() and have SMO filter out the database that the user doesn't have access to, we'll use this. Or if we are fine showing the user 1400 databases, even though they may only have permission to a few then we can remove the access check.

I need either some technical guidance on whether SMO has the capability to do collection pruning based on the user's credentials, or guidance on whether it's ok to show the users 1400 databases even though they don't have permissions to these.

I will do some more digging to see if there is a better/more efficient way to check database permissions than trying to call database.Tables.Count.
=== Edited by terrydenham @ 5/15/2006 11:42:59 AM ===
I've changed the code from having to pull back every table object in each database and check if a table is accessible, to using the IsAccessible property on the database object. Now the code reads like this

foreach( Smo.Database db in dbc)
{
    if( db.IsAccessible) 
        dbCollection.Add(db);        
}
return dbCollection;
=== Edited by terrydenham @ 5/16/2006 7:27:51 AM ===
 --&gt; Issue type changed
I tried to create 1400 databases to test with but on my laptop SQL Server 2005 consumed 1.6GB with 1400 database and I'm close exceeding my physical memory limites before even opening up VS 2005, so I'm backing away from 1400 databases and going with around 800. Hopefull this will give me enough memory to test the two different approaches.
=== Edited by terrydenham @ 5/17/2006 1:51:34 PM ===
 --&gt; AssignedTo changed from edle to terrydenham
 --&gt; Issue type changed

=== Edited by terrydenham @ 5/19/2006 9:22:13 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:54:13 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Slow Performance 20060629055413P</guid></item><item><title>CREATED ISSUE: Permission setup requirements not fully explained</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=689</link><description>=== Opened by edle @ 5/15/2006 8:58:54 AM ===
Couldn't log in with the user I created.  Needed to set database permissions, but the documentation didn't indicate which permissions I needed to set.  I added my AppPool user to the following ASPNet "Full Access" roles and it worked:
aspnet_MembershipFullAccess
aspnet_RolesFullAccess
aspnet_Profile_FullAccess
aspnet_Personalization_FullAccess
aspnet_WebEvent_FullAccess
=== Edited by terrydenham @ 5/19/2006 9:24:48 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:53:34 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Permission setup requirements not fully explained 20060629055334P</guid></item><item><title>CREATED ISSUE: No page change after Create User</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=688</link><description>=== Opened by edle @ 5/15/2006 8:57:42 AM ===
After creating a user in the app, I was left at the same page as the user creation.  The only change to indicate anything happened was that there was an asterisk next to the password field and this text appeared in really small font under the "create user" button:  "User has been created and assigned the Membership User and Database Owner roles. Please use the Membership Administration &gt; Manage Users page to assign this user to other roles."  Should really go to a new page or back to the Membership Administration page to indicate the user is set up.
=== Edited by terrydenham @ 5/19/2006 9:23:16 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:52:41 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: No page change after Create User 20060629055241P</guid></item><item><title>CREATED ISSUE: How to configure AppPool for domain account rather than network Service?</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=687</link><description>=== Opened by edle @ 5/15/2006 8:54:47 AM ===
Include instructions on how to configure the AppPool to use a domain account rather than the default Network Service.  Make sure the steps include the need to add the domain account to the IIS_WPG local group on the web se
=== Edited by terrydenham @ 5/19/2006 9:25:13 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:52:00 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: How to configure AppPool for domain account rather than network Service? 20060629055200P</guid></item><item><title>CREATED TASK: How to install on existing site?</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=686</link><description>=== Opened by edle @ 5/15/2006 8:53:44 AM ===
Include instructions for creating the app as a virtual directory under an existing Web Site.  In our case we have an SSL cert for the site and wanted this data to be encrypted so we set it up as a virtual directory under our existing site.

=== Edited by terrydenham @ 5/19/2006 9:26:14 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:51:27 GMT</pubDate><guid isPermaLink="false">CREATED TASK: How to install on existing site? 20060629055127P</guid></item><item><title>CREATED ISSUE: SMO Libraries feature unmanaged code which requires full trust</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=685</link><description>=== Opened by ssargent @ 3/31/2006 9:36:53 AM ===
The SMO Libraries require full trust which inhibits this application from running in a medium trust app domain.  This potentailly causes problems for hosters.
=== Edited by Russla @ 4/7/2006 1:57:27 PM ===
 --&gt; Issue type changed
Is this an issue if the application is installed on a dedicated server? or one of the hosters infrastructure servers?,  
=== Edited by edle @ 4/25/2006 4:32:53 PM ===
 --&gt; Priority changed from 1 to 2
 --&gt; Issue type changed
There doesn't appear to be a feasible short-term fix for this. We'll continue looking at the longterm possibilities.
=== Resolved by edle @ 5/9/2006 8:59:36 AM ===
 --&gt; Status changed from [Active] to [Resolved]
 --&gt; AssignedTo changed from edle to [Unassigned]
 --&gt; Issue type changed
SQL Server DCR has been logged to allow partially trusted callers.
=== Closed by edle @ 5/9/2006 8:59:45 AM ===
 --&gt; Status changed from [Resolved] to [Closed]

=== Activated by edle @ 5/12/2006 9:08:46 AM ===
 --&gt; Status changed from [Closed] to [Active]
 --&gt; AssignedTo changed from [Unassigned] to terrydenham
 --&gt; Issue type changed
Need to add content at front of setup doc describing security risks and requirements in an externally facing Internet environment, especially for hosters. </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:50:30 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: SMO Libraries feature unmanaged code which requires full trust 20060629055030P</guid></item><item><title>CREATED TASK: Cover differences between XP and Server in setup doc</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=684</link><description>=== Opened by jmarkjewett @ 3/24/2006 10:13:34 AM ===
There are some differences in setting up SQL Web Tools on Windows XP vs. Windows Server 2003 (for example, App Pool account).  This should be covered because it will be setup on both.
=== Edited by edle @ 3/24/2006 10:15:14 AM ===
 --&gt; Priority changed from 1 to 2
 --&gt; AssignedTo changed from [Unassigned] to ssargent

=== Edited by ssargent @ 3/31/2006 8:35:30 AM ===
 --&gt; AssignedTo changed from ssargent to TerriMorton
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:49:40 GMT</pubDate><guid isPermaLink="false">CREATED TASK: Cover differences between XP and Server in setup doc 20060629054940P</guid></item><item><title>CREATED TASK: Provide an abstracted configuration file</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=683</link><description>=== Opened by jmarkjewett @ 3/24/2006 10:00:43 AM ===
We should take all the common customizations that people would do and abstract them into a configuration file that makes it easy to customize and deploy.  If this bug is fixed, then bug #15 will be affected as well (as the deployment document would then cover how to make customizations in this file rather than throughout the codebase).
=== Edited by terrydenham @ 5/9/2006 7:59:49 AM ===
 --&gt; Issue type changed
We discussed this issue during a recent meeting and it was agreed that based on how the application is written, where it uses a lot of features already provided in ASP.NET 2.0, things such as the sitemap, localization, web parts, master pages, theme, membership/role providers, that providing another configuration file where all these options are already in a configuration file would not really gain us anything. The decision was to document "how" to go about changing these things for implementers. Include instructions on how to brand the site by changing the site graphics (theme support), changing how the user logs in (membership/role) changing the paths (sitemap). </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:49:03 GMT</pubDate><guid isPermaLink="false">CREATED TASK: Provide an abstracted configuration file 20060629054903P</guid></item><item><title>CREATED ISSUE: Deployment and common customization bug</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=682</link><description>=== Opened by jmarkjewett @ 3/24/2006 9:58:04 AM ===
In addition to the setup document, we need to create a deployment guide that covers some of the considerations for deployment.  This would include how to change images, styles/CSS, links (e.g., the ones in the top right corner).
=== Edited by edle @ 3/24/2006 10:13:43 AM ===
 --&gt; AssignedTo changed from [Unassigned] to ssargent

=== Edited by jmarkjewett @ 3/31/2006 9:18:22 AM ===
 --&gt; Priority changed from 1 to 2
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:48:18 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Deployment and common customization bug 20060629054818P</guid></item><item><title>CREATED FEATURE: Need a way to enter data in form or grid, not just query</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=681</link><description>=== Opened by jmarkjewett @ 3/20/2006 1:47:26 PM ===
Right now, I can enter data in a table by using the query screen.  But there should be a way to enter a record in a grid form (preferred) or at least in a form (1 record per form, then click submit).

=== Edited by edle @ 3/24/2006 10:11:51 AM ===
 --&gt; Issue type changed

=== Edited by terrydenham @ 4/24/2006 4:33:29 PM ===
 --&gt; AssignedTo changed from [Unassigned] to terrydenham
 --&gt; Issue type changed
Added a new page under Administration as well as adding the node to the SiteMap. This new page (DataEntry) is linked from the Tables.aspx page or TableProperties once you choose a table. This page uses the GridView and the DetailView controls to allow editing of data on selected tables.
=== Resolved by terrydenham @ 4/24/2006 4:33:41 PM ===

=== Activated by terrydenham @ 4/24/2006 4:33:54 PM ===
 --&gt; Status changed from [Resolved] to [Active]
 --&gt; AssignedTo changed from jmarkjewett to terrydenham

=== Resolved by terrydenham @ 4/24/2006 4:34:00 PM ===
 --&gt; Status changed from [Active] to [Resolved]
 --&gt; AssignedTo changed from terrydenham to jmarkjewett

=== Activated by jmarkjewett @ 5/10/2006 3:03:51 PM ===
 --&gt; Status changed from [Resolved] to [Active]
 --&gt; AssignedTo changed from jmarkjewett to terrydenham
 --&gt; Issue type changed
I like the new page, thanks for adding.  Isn't it possible to make the details entry area smart to handle certain field types (e.g., ID field, int vs. varchar, etc.)?
=== Edited by edle @ 5/12/2006 9:10:28 AM ===
 --&gt; Issue type changed

=== Edited by edle @ 5/12/2006 9:10:55 AM ===
 --&gt; Priority changed from 2 to 3

=== Edited by terrydenham @ 5/19/2006 9:32:35 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:47:42 GMT</pubDate><guid isPermaLink="false">CREATED FEATURE: Need a way to enter data in form or grid, not just query 20060629054742P</guid></item><item><title>CREATED TASK: Provide guidance on right level of permissions for app pool account</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=680</link><description>=== Opened by jmarkjewett @ 3/20/2006 1:47:06 PM ===
The setup document does not give guidance on the right level of permissions to provide the ASP.NET App Pool account to give a balance between the right level of functionality, and the right level of security.  We should provide this guidance, along with updates to the setup guide on how to do it.

=== Edited by edle @ 3/24/2006 10:08:09 AM ===
 --&gt; AssignedTo changed from [Unassigned] to ssargent
 --&gt; Issue type changed
Need to add detail to the setup doc with link to KB article for more information.
=== Edited by jmarkjewett @ 3/24/2006 10:11:34 AM ===
This bug refers to the following step in setup document:
(currently step 7) Grant access as necessary to the database created in step 5 (e.g. make your app pool user a valid SQL user if using trusted_connection=true).

So we need to provide guidance on what SQL permissions should be granted in this step if Integrated Authentication is being used.
=== Edited by ssargent @ 3/31/2006 8:34:28 AM ===
 --&gt; Issue type changed
NOTE: This is not a definitive guide on security the ASPNET Provider database, please see the link at the bottom of this comment for that.  Some basic information however is as follows.  

The Database user whether app pool or a sql auth user that connects to the membership database needs the following roles:

aspnet_MembershipFullAccess 
aspnet_RolesFullAccess 
aspnet_Profile_FullAccess
aspnet_Personalization_FullAccess
aspnet_WebEvent_FullAccess

Alternatively in development a more sweeping role such as dbo may be utilized but this will not be lease priviledge and is most likely not a best practice.

More Information can be obtained on the msdn site that supports membership database permissions
http://msdn2.microsoft.com/en-us/library/ms164596.aspx

=== Edited by jmarkjewett @ 3/31/2006 9:18:48 AM ===
 --&gt; Severity changed from 3 to 2

=== Edited by ssargent @ 3/31/2006 9:47:51 AM ===
 --&gt; AssignedTo changed from ssargent to TerriMorton

=== Edited by jmarkjewett @ 4/13/2006 10:23:20 AM ===
 --&gt; Issue type changed
Specifically, this should be added to #5 in section 2.2 of the install document.  Right now I'm checking the db_owner role and that seems to make it work, but not sure this is the right guidance.
=== Edited by TerriMorton @ 4/21/2006 7:52:55 AM ===
 --&gt; AssignedTo changed from TerriMorton to edle
 --&gt; Issue type changed

=== Resolved by TerriMorton @ 4/21/2006 7:53:27 AM ===
 --&gt; Status changed from [Active] to [Resolved]

=== Activated by edle @ 4/26/2006 8:59:34 AM ===
 --&gt; Status changed from [Resolved] to [Active]
 --&gt; AssignedTo changed from edle to TerriMorton
 --&gt; Issue type changed

=== Resolved by edle @ 4/26/2006 8:59:46 AM ===
 --&gt; Status changed from [Active] to [Resolved]
 --&gt; Resolution changed from [By Design] to [Fixed]
 --&gt; AssignedTo changed from TerriMorton to jmarkjewett

=== Activated by jmarkjewett @ 5/10/2006 2:50:26 PM ===
 --&gt; Status changed from [Resolved] to [Active]
 --&gt; AssignedTo changed from jmarkjewett to edle
 --&gt; Issue type changed
There is two typos in the setup document:
aspnet_MembershipFullAccess should be aspnet_Membership_FullAccess 
aspnet_RolesFullAccess should be aspnet_Roles_FullAccess 

=== Edited by edle @ 5/12/2006 8:54:32 AM ===
 --&gt; AssignedTo changed from edle to TerriMorton
 --&gt; Issue type changed

=== Edited by terrydenham @ 5/19/2006 9:29:16 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:47:04 GMT</pubDate><guid isPermaLink="false">CREATED TASK: Provide guidance on right level of permissions for app pool account 20060629054704P</guid></item><item><title>CREATED FEATURE: Separate Logins for DB and SQL Web Tools is confusing</title><link>http://www.codeplex.com/WorkItem/View.aspx?ProjectName=SQLWebTools&amp;WorkItemId=679</link><description>[migrated from GotDotNet site]

It seems there are effectively two different logins - one for SQL Web Tools itself, and one for the SQL Server.  This is confusing.  At the very least, we need to do a good job of explaining it in documentation.  Ideally, we'd like a better handling in the product itself.
=== Edited by edle @ 3/24/2006 9:47:35 AM ===
 --&gt; AssignedTo changed from [Unassigned] to jmarkjewett
 --&gt; Issue type changed

=== Edited by jmarkjewett @ 3/30/2006 5:04:17 PM ===
 --&gt; Priority changed from 1 to 2
 --&gt; Severity changed from 2 to 3
 --&gt; Issue type changed
I followed up with Euan who explained to me this would be a very difficult issue to change.  As such, I think we should call this a feature request and not make a requirement for shipping v1.
=== Edited by jmarkjewett @ 3/30/2006 5:04:58 PM ===
 --&gt; AssignedTo changed from jmarkjewett to [Unassigned]

=== Edited by terrydenham @ 5/19/2006 9:33:06 AM ===
 --&gt; Issue type changed </description><author>edlehman</author><pubDate>Thu, 29 Jun 2006 17:45:52 GMT</pubDate><guid isPermaLink="false">CREATED FEATURE: Separate Logins for DB and SQL Web Tools is confusing 20060629054552P</guid></item></channel></rss>