I've got a large legacy SQL 2005 database I'm working on (reworking the table is not an option). There is a user that currently has READ and WRITE. There is a stored procedure that requires the user to have ALTER for a certain table. The stored procedure is run very infrequently perhapse once or twice a year, and it is not desireable for the user to have ALTER on the table for the entire year. It is also not desirable to have the admin change the permissions manually or have to preform some task when the user wants to run the stored procedure. Is there a programatic way to give the user this permission and remove it afterward?