SQL Server 05 \ 08: Grant Exec со специальным символом в логине - PullRequest
2 голосов
/ 01 марта 2010

Попытка выполнить команду:

grant exec on GetPrograms to fp\ouruser_api

Когда я запускаю его, я получаю сообщение об ошибке «неправильный синтаксис рядом с \», но это идентификатор входа в систему, хранящийся в нашей базе данных. Как я могу предоставить этому пользователю разрешения?

Спасибо

Ответы [ 2 ]

2 голосов
/ 01 марта 2010

предоставить exec для GetPrograms для [fp \ ouruser_api]

0 голосов
/ 01 марта 2010

Разделяйте необычные идентификаторы с помощью []. Всегда.

Не используйте их в системных вызовах proc:

CREATE USER [fp\ouruser_api] FROM LOGON [fp\ouruser_api];;
GRANT CONNECT TO [fp\ouruser_api];
EXEC sp_addrolemember 'foobar', 'fp\ouruser_api';

Кстати, лучше всего создавать роли и назначать разрешения для роли. Добавить пользователя в роли. Итак, продолжая мой пример ...

grant exec on GetPrograms to foobar;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...