![enter image description here](https://i.stack.imgur.com/wNwI0.png)
Я пытался получить установку DevOpsServer 2019-RC1, чтобы увидеть мой SQL Server Azure
Моя установка DevOpsServer включенаВиртуальная машина Azure, как рекомендовано
Я реализовал все из приведенной ниже документации, касающейся настройки MSI для виртуальной машины и предоставления доступа MSI к Azure SQL через проверку подлинности AAD:
Я также добавил VNET, в которой расположена сетевая карта виртуальной машины, в качестве правила брандмауэра VNET на SQL Server Azure, чтобы гарантировать отсутствие проблем с подключением
Мой DevOpsServer отказывается видеть Azure SQL Server или его базы данных
Чтобы подтвердить, что Azure SQL не заблокирован от виртуальной машины, я успешно создал системное DSN-соединение ODBC на виртуальной машине, что позволяетмне посмотреть SQL Server Azure и его базы данных
Согласно справочной документации:
- При настройке нового экземпляра DevOps Server, яselected " Это новое развертывание сервера DevOps Azure "
- На странице базы данных мастера настройки укажите экземпляр сервера базы данных SQL Azure, обычно в форме «SQLInstanceName.database.windows.net "
Пожалуйста, дайте мне знать, если я могу еще что-нибудь сделать, чтобы Мастер настройки сервера Devops увидел мой SQL Server и базы данных Azure
PS Я пытаюсьзаставить это работать в правительстве Azure (MAG), если это изменит возможность ...
Ошибка при попытке программного подключения к базе данных SQL с помощью следующего сценария Powershell:
# Retrieve the access token
$response = Invoke-WebRequest -Uri 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https%3A%2F%2Fdatabase.usgovcloudapi.net' -Method GET -Headers @{Metadata="true"}
$content = $response.Content | ConvertFrom-Json
$AccessToken = $content.access_token
# Create the connection
$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = "Data Source = test-sqlsrv.database.usgovcloudapi.net; Initial Catalog = inldb"
$SqlConnection.AccessToken = $AccessToken
$SqlConnection.Open()
# Send a Query
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = "SELECT * from <TABLE>;"
$SqlCmd.Connection = $SqlConnection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
![enter image description here](https://i.stack.imgur.com/83rvV.png)