Ok.. Then you have to Revoke all privileges to public role and guest user accounts first.
And this should guide you with the additional steps required.
http://duartes.org/gustavo/articles/Lock-Down-SQL-Server-2005.aspxThen add him to db_datareader role and issue revoke statements to all the other tables that are not required for that particular user ( Include views too for the Revoke statements)
Grant Execute permissions as required..