Создайте нового пользователя для той части приложения, которая имеет только привилегии выбора. Имейте в виду, что вам также нужно будет создать синонимы для всех таблиц / представлений, которые сможет просматривать пользователь с правами только на чтение.
«Обычная» часть вашего приложения все еще сможет выполнять другие операции (вставка, обновление, удаление). Просто для составления отчетов будет использоваться пользователь только для чтения.
Как предполагает Хорасио, это также хорошая идея / практика добавлять «обёрточные» представления, которые раскрывают только то, что вы хотите показать. Какой-то "публичный API". Это может дать вам гибкость, если вам нужно изменить базовые таблицы и не хотите / не можете изменить отчеты на новые определения указанных таблиц. Это может, однако, рассматриваться как большая «дополнительная работа».