I'm attempting to create a role in Azure SQL such that the user can perform Select operations, view all schema (but not modify schema) but not perform any writes or execute stored procs. Granting a user Select permission gets me close. However, the user cannot see any stored procs or scalar functions.
So, I want to allow the user to see all schema definitions, not modify any schema objects and perform Selects. Is this possible?