Using SQL Server 2008, is there a way to allow inserts to a table only via a stored procedure, and if so how?
EDIT:
The best way to go is probably Martin Smith's suggestion to use an INSTEAD OF INSERT trigger. The direct answer to this question is marc_s' one with GRANT and DENY, though it won't limit some user accounts.