the case is, say, table_name = mytable, owner = siddba
grant all privileges on siddba.mytable to sidusr; is done
create public synonym mytable for siddba.mytable; is done

when sidusr executes
alter table mytable disable primary key;
"ORA-00942: table or view does not exist" returns
alter table siddba.mytable disable primary key;
"ORA-01418: specified index does not exist" returns

if alter any index is granted to sidusr
"ORA-01031: insufficient privileges" returns

any idea for the goal?