I'm running SQL Server 2008 R2 SP2
. I have a SQL Server user, that the application uses to connect to my database. I've removed the user from all roles except public and the login from all database roles.
When I log into my SQL Server, I'm able to connect to the database and although I can't read from any tables, I can still create and drop tables.
In querying
sys.database_role_members
sys.database_principals
sys.server_role_members
sys.server_principals
... I'm not able to find any roles associated with the SQL user.
Is there someplace else I can look to find out how this user has permission to create and drop tables?
What right needs to be revoked to remove this users ability to create and drop data objects?
sys.database_permissions
? It seems you've only checked for role membership but not explicit grant permissions.