Look up TRUNCATE TABLE in BOL:
Permissions
TRUNCATE TABLE permissions default to the table owner, members of the sysadmin fixed server role, and the db_owner and db_ddladmin fixed database roles, and are not transferable.
All these roles give quite broad permissions in the DB, except table owner which is probably also not the best option. TRUNCATE TABLE performs unlogged operations, therefore it is understandable that only admins/owners can issue this command.