Имя: Пароль:
IT
Админ
[ODBC] Права на доступ к присоединенной/внешней таблице SQL Server из Access запроса
0 ivanovpetr79
 
04.01.22
13:20
А когда то давно здесь можно было найти специалистов по правам на таблицы в внешних ODBC источниках SQL Server 2012.

Имеется запрос Access for Office 365, содержащий присоединенную таблицу из внешнего источника - базы SQL Server 2012. На машине разработчика - тот, кто добавил внешнюю таблицу в Access базу и запрос все работает.

На другой машине выдается сообщение об отсутствии прав на новую присоединенную таблицу.

odbc call failed #229

The SELECT Permission was denied on the object database schema


MS Access Linked Table ODBC DSN:

ODBC;DSN=xxx;Trusted_Connection=Yes;APP=Microsoft Office;DATABASE=My_DB;;TABLE=dbo.Dbo_My_Table

В ODBC используется встроенная аутентификация Windows
https://i2.paste.pics/2372e5a01e250fd35bad7355636918d8.png

Проверил права Access на таблицу на проблемной машине - они те же самые, что и у меня. Сам Access может открыть Dbo_My_Table.

Где и как мне раздать права на новую таблицу в SQL/Server или ODBC источнике?

Что должно стоять в <UserName> в случае Integrated Windows Authetication:

USE My_DB;

GRANT SELECT ON dbo.Dbo_My_Table TO <UserName>;

Под каким пользователем нужно запускать указанный выше GRANT DDL?
1 МихаилМ
 
04.01.22
14:09
ошиблись форумом.
Вам сюда https://www.sql.ru/forum/microsoft-sql-server
применительно к международному по принято использовать англоязычную терминологию.
2 ivanovpetr79
 
05.01.22
18:58
(1) - вообще то это тема по Access. И не имеет никакого отношения к SQL Server. А имеет больше отношения к админству, о чем я и указал в секции.

По всей видимости объекты (Linked Table), созданные Windows пользователями одной Active Directory - группы не "видны" с точки зрения системы прав пользователям другой Active Directory - группы.

Теперь главный вопрос - можно ли управлять правами объектов Access на уровне групп или придется пересоздавать объекты под пользователем нужной группы.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан