Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 28.02.2024
Сообщений: 4
1

Доступ к вьюшке без доступа её источнику

28.02.2024, 18:47. Показов 606. Ответов 9

Author24 — интернет-сервис помощи студентам
Прошу знатоков подсказать способ решения следующей задачи: на 1 sql-сервере есть несколько БД, одна из них содержит таблицу представлений, в которой прописан select на несколько таблиц из других БД этого сервера. Возможно ли завести пользователя сервера чтобы у него были права только на select к этому представлению, но он бы не видел другие базы данных (или хотя бы не имел к ним доступ)?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2024, 18:47
Ответы с готовыми решениями:

доступ к virtual folder без анонимного доступа
В IIS создал виртуальный каталог, залил туда файлы (zip, rar) Доступ к файлам ограничен, но...

Чтобы с каждого компа был доступ в локальную сеть по wi-fi но без доступа в Интернет
Позвольте задать вопрос. Архитектура сети: ...

Как подключиться к источнику данных программно (без мастеров)
Как обойтись без перетаскивания? Среда Visual Basic STUDIO’2010 Professional В приложении...

Сохранение данных в программе без создания/подключения к внешнему источнику данных
Насколько я знаю сделать это можно. Хочу чтобы данные в определенных TextBox, СomboBox а так же в...

9
2843 / 1963 / 367
Регистрация: 14.08.2018
Сообщений: 6,344
Записей в блоге: 4
29.02.2024, 09:34 2
Seneka7608, Делаете логин на сервере, его пробрасываете на нужную БД и добавляете его в роль БД db_datareader. Этот пользователь сможет только просматривать данные (SELECT) и только в этой БД, другие он не увидит.
1
0 / 0 / 0
Регистрация: 28.02.2024
Сообщений: 4
01.03.2024, 09:08  [ТС] 3
Новый логин видит все БД при наличии роли public, убрать её не получается (совсем отказываться от public тоже не вариант, это сломает работу других пользователей). Добавление роли db_datareader в доступе ничего не меняет. Можно отозвать права на просмотр всех баз, но тогда и нужная база пропадает, а делать пользователя овнером нужной базы тоже нельзя, он будет иметь право смотреть код представления.
А нельзя ли сделать чтобы запрос в представлении выполнялся под правами другого пользователя? Знаю что можно сделать функцию и запускать её через EXECUTE AS, но это недопустимо для представления
0
2843 / 1963 / 367
Регистрация: 14.08.2018
Сообщений: 6,344
Записей в блоге: 4
01.03.2024, 09:52 4
Цитата Сообщение от Seneka7608 Посмотреть сообщение
Новый логин видит все БД при наличии роли public
Ну и пусть видит, он ничего с ними сделать не сможет - ни запрос написать, ни структуру посмотреть. Какой ему прок от названий других БД на сервере?
0
0 / 0 / 0
Регистрация: 28.02.2024
Сообщений: 4
01.03.2024, 12:32  [ТС] 5
Чтобы вьюшка получила данные под этим логином, нужно ему выдать права на SELECT используемых ей таблиц, т.е. этот логин сможет зайти в эту БД и посмотреть все данные этих таблиц, а не только то что возвращает ему вьюшка. Есть, конечно, надежда что пользователь не сможет найти эти БД и эти таблицы (просмотр кода вьюшки ему недоступен и ему придётся перебирать все доступные таблицы), но такая возможность не устраивает требования безопасности.
Т.е. доступ к источнику вьюшки остаётся
0
124 / 93 / 33
Регистрация: 27.07.2022
Сообщений: 302
01.03.2024, 14:03 6
Это называется ownership chains. Грубо говоря - если владелец вьюхи владеет всеми объектами, куда эта вьюха лезет, то пользователю достаточно получить права на select из вьюхи. Если владельцы разные, то пользователю нужно дополнительно прописать доступ на объекты, где другой владелец. Плюс если лезет в другие базы, то надо cross db ownership chaining на сервере и на базах включать
0
2843 / 1963 / 367
Регистрация: 14.08.2018
Сообщений: 6,344
Записей в блоге: 4
01.03.2024, 14:03 7
Seneka7608, ПКМ на нужной вьюхе -> Properties и дальше играйтесь
Доступ к вьюшке без доступа её источнику

Но пользователь в БД должен быть.
0
563 / 255 / 113
Регистрация: 12.04.2022
Сообщений: 943
01.03.2024, 15:03 8
Вставлю 5 коп.

Цитата Сообщение от katamoto Посмотреть сообщение
надо cross db ownership chaining на сервере и на базах включать
1. cross db ownership chaining - перекрывает настройку DB_CHAINING

2. Лучше использовать DB_CHAINING.

3. Либо использовать сертификат.
0
0 / 0 / 0
Регистрация: 28.02.2024
Сообщений: 4
01.03.2024, 15:07  [ТС] 9
Спасибо! Буду экспериментировать
0
124 / 93 / 33
Регистрация: 27.07.2022
Сообщений: 302
01.03.2024, 15:15 10
Цитата Сообщение от PaulWist Посмотреть сообщение
cross db ownership chaining - перекрывает настройку DB_CHAINING
Угу... Я просто 'и' вместо 'или' написал впопыхах, а потом уже поздно было редактировать..
0
01.03.2024, 15:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.03.2024, 15:15
Помогаю со студенческими работами здесь

Опрос машин в сети без прав админа и без доступа на роутер
Всем доброго времени, помогите решить задачку: Имеется домашняя сеть, роутер асус и подключеные...

Gpedit.msc и system32, в папку не зайти без редактора, редактор не поставить без доступа
Всем доброго дня! Что-то бьюсь, бьюсь, никак не сделать. Может в каком-то месте не догоняю...

Как можно закачать локальные файлы с помошью php+JS на webserver без доступа по FTP и без участия пользователя ?
Как можно закачать локальные файлы с помошью php+JS на webserver без доступа по FTP и без участия...

Вопрос по вьюшке
Помогите плиз!!! Имеется вьюшка. Первая колонка формируется из поля с мульти значениями. т.е. с...

Поиск По Вьюшке
Нужна помощь. Если в стандартной вьюшке начать что-либо печатать, то выходит стандартное окно...

Создание SelectListItem во вьюшке
Добрый день коллеги! У меня есть контроллер, метод в нем Edit и вьюшка, строго типизированная на...

Доступ к папке - Нет доступа!
При попытке открыть папку XP выдает - "Нет доступа к папке!" Появилось после установки windows 7,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru