Я хочу подключиться к базе данных AzureSQL, используя DBI в R. Я хочу управлять этим соединением с помощью аутентификации AzureAD ActiveDirectoryPassword
. Для этого мне необходимо указать AzureAD UID
и Password
.
Я подтвердил, что могу подключиться к этому серверу, используя другие методы аутентификации.
Запуск приведенного ниже кода приводит к ошибке:
DBI::dbConnect(
odbc()
, Driver = "SQL Server"
, .connection_string =
sprintf("server=%s;database=dbName;UID=%s;PWD=%s;Authentication=%s;"
, 'sqlservername.database.windows.net'
, 'justin@contoso.com'
, pwd # Let's just assume this is securely done for now
, 'ActiveDirectoryPassword'))
Ожидаемый результат - подключение к базе данных
Фактический результат был следующим:
Error: nanodbc/nanodbc.cpp:950: HY000: [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot open server "contoso.com" requested by the login. The login failed.
Я думаю, что @
в имени пользователя ведет себя не так, как я ожидал изначально. Как мне заставить это соединение работать? - Я думаю, мне просто нужно найти правильный формат для выражения (экранирования?) Имени пользователя.