Интегрированная аутентификация из виртуальной машины AD в Azure SQL DB - PullRequest
3 голосов
/ 15 апреля 2019

Я ищу руководство по проблеме, которую пытаюсь решить.Прямо сейчас наша строка подключения web.config содержит простой текстовый пароль и имя пользователя.По соображениям соответствия мы должны удалить эти обычные текстовые учетные данные и заменить их встроенной аутентификацией.Раньше это делалось путем добавления в текстовые кредиты значения «trust_connection = yes».

Дополнительные пояснения по нашей настройке - мы находимся в процессе перехода на Azure.Настройка выглядит следующим образом: у нас есть пара виртуальных машин, на которых работает Active Directory, наша веб-виртуальная машина работает под управлением стандартного IIS, и это говорит о SQL Azure DB.К сожалению, мы не можем перейти на Azure AD, поскольку у нас есть другие требования, которые требуют, чтобы это осталось.Любая помощь или идеи будут оценены.Заранее спасибо!

tl; dr - Как мы можем получить учетные данные в виде простого текста из файла web.config в среде, в которой есть AD на базе VM и база данных SQL Azure SQL.

  • Файл Web.config находится на сервере Windows 2016 с IIS
  • AD на паре виртуальных машин 2016 года
  • В качестве базы данных SQL Azure используется PaaS

Web.config:

<add key="Persist Security Info=False;User ID=XXXXX;Password=XXXXXX;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" />

<add key="Persist Security Info=False;trusted_connection=yes;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" />

1 Ответ

1 голос
/ 15 апреля 2019

Как мы можем получить учетные данные в виде простого текста из файла web.config в среде с AD на базе VM и базой данных SQL Azure.

right способ сделать это в Azure - предоставить идентификатор управляемой службы для вашей виртуальной машины и использовать этот идентификатор для получения токена доступа для SQL Server.Вы можете следовать учебному пособию здесь .

В этом случае вашей строке подключения не требуется информация о безопасности.Просто что-то вроде:

"Data Source = someInstance.database.windows.net; Initial Catalog = someDatabase;Connection Timeout=30;" 

В качестве альтернативы вы можете использовать MSI для доступа к хранилищу ключей Azure и получения учетных данных аутентификации SQL для подключения, а не сохранять их в файле конфигурации, согласно учебному пособию здесь .

Вы также можете попробовать , чтобы настроить пул приложений для запуска под учетной записью домена, настроенной для Бесшовная регистрация с AAD , как и вы должны получать доступ к базе данных SQL Azure при входе на присоединенную к домену рабочую станцию.Но на этом пути много потенциальной сложности.

...