Yes, this is called ownership chaining , if you give permission to execute proc, the user will be able to execute proc, and he will work, he will receive data back
if he then tries to make a selection from a table from SSMS, it will not work (provided that he is not in a data reader or a higher role)
Keep in mind that dynamic SQL is broken down into ownership chaining , if you have dynamic SQL in a stored procedure, you will need additional permissions
SQLMenace
source share