giving users select-only permissions of database objects
It sounds like you simply want to give those users db_datareader and nothing else. This is pretty common.


  Members of the db_datareader fixed database role can read all data
  from all user tables.


See the role explained in the MS DOCS