Доступ к частной учетной записи хранения из размещенных агентов Azure Devops

Я пытаюсь получить доступ к учетной записи лазурное хранилище BLOB-объектов, чтобы записать некоторые файлы из моих конвейеров, работающих с azure devops размещенный агент. Мы пока не можем использовать тег службы azure devops с размещенным агентом azure devops.

И мне было интересно, есть ли разумное решение для доступа к моему хранилищу больших двоичных объектов из моих размещенных агентов, не открывая его для всего Интернета.

Спасибо заранее, ребята

Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
1
0
47
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В зависимости от ваших требований вам необходимо получить доступ к учетной записи Private Storage с помощью агента, размещенного в Microsoft.

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

Чтобы удовлетворить ваши требования, вы можете использовать сценарий, чтобы получить текущий IP-адрес агента, размещенного в Microsoft, и добавить его в белый список брандмауэра учетной записи хранения Azure с помощью Azure CLI или Azure PowerShell.

Например:

steps:
- task: AzurePowerShell@5
  displayName: 'Azure PowerShell script: Set Rule'
  inputs:
    azureSubscription: kevin0215
    ScriptType: InlineScript
    Inline: |
     $IP= Invoke-RestMethod http://ipinfo.io/json | Select -exp ip
     
     $IP
     
     Add-AzStorageAccountNetworkRule -ResourceGroupName "ResourceGroup" -AccountName "kevin0204" -IPAddressOrRange "$IP"
     
     
     
    preferredAzurePowerShellVersion: ' 3.1.0'

- task: AzureFileCopy@4
  displayName: 'AzureBlob File Copy'
  inputs:
    SourcePath: test
    azureSubscription: kevin0322
    Destination: AzureBlob
    storage: test
    ContainerName: 1


- task: AzurePowerShell@5
  displayName: 'Azure PowerShell script: Remove Rule'
  inputs:
    azureSubscription: kevin0215
    ScriptType: InlineScript
    Inline: |
     $IP= Invoke-RestMethod http://ipinfo.io/json | Select -exp ip
     
     $IP
     
     Remove-AzStorageAccountNetworkRule -ResourceGroupName "ResourceGroup" -AccountName "kevin0204" -IPAddressOrRange "$IP"
     
     
    preferredAzurePowerShellVersion: ' 3.1.0'

Объяснение:

Вы можете добавить IP-адрес в белый список брандмауэра перед загрузкой файла. После загрузки вы можете удалить этот IP.

Примечание:: Текущая учетная запись хранения Azure имеет известное ограничение. Обратитесь к этому документу: Ограничения правил IP-сети учетной записи хранения Azure.

Если ваша организация службы Azure Devops и учетная запись хранения Azure находятся в одном регионе, доступ к ним будет осуществляться через частный IP-адрес. Это может вызвать периодические проблемы с доступом.

Другие вопросы по теме