It depends. If your application installs the SQL Server instance and maintains it then you can do what you need to ensure the application functions.
If you allow users to use any network instance of SQL then you're best off not to automate any security modifications as you risk pissing off a DBA.
I have both cases -- In the case where my app installs the DB I require the app to run with dbo permissions so it can adjust the database accordingly -- both schema and permissions.
In the case where I don't install the DB I don't make any changes, I just flash informative error messages with what they need to do to fix the problem.
Reputation Points: 1749
Solved Threads: 735
Senior Poster
Offline 3,948 posts
since Feb 2009