簡體   English   中英

Azure DevOps 管道無法復制到 Azure 存儲

[英]Azure DevOps pipeline cannot copy to Azure storage

I've got a pipeline that builds web artefacts and attempts to copy them to my Azure Storage using the Azure File Copy task provided in the Azure Pipelines. 過去 2 天我一直在嘗試修復此 403 響應,指出存在權限錯誤。

  • 我有這個管道的服務連接。
  • 服務連接應用注冊有user_impersonation for Azure存儲在API權限
  • 服務連接應用程序注冊具有目標存儲帳戶、資源組和訂閱的“存儲 Blob 數據參與者”和“存儲 Blob 數據所有者”。

在此處輸入圖像描述

在此處輸入圖像描述

在此處輸入圖像描述

在此處輸入圖像描述

由於存儲帳戶使用防火牆並根據您的評論啟用了 IP 范圍白名單,因此您應該將代理的 IP 地址添加到白名單中。

  • 如果您正在運行自己的構建代理,這非常簡單。
  • 如果您使用 Microsoft 托管的代理來運行您的作業,並且您需要有關使用哪些 IP 地址的信息,請參閱Microsoft 托管的代理代理 IP 范圍

在某些設置中,您可能需要知道部署代理的 IP 地址范圍。 例如,如果您需要通過防火牆授予托管代理訪問權限,您可能希望通過 IP 地址限制該訪問。 由於 Azure DevOps 使用 Azure 全球網絡,IP 范圍隨時間變化。 我們每周發布一份 JSON 文件,列出 Azure 數據中心的 IP 范圍,按地區划分。 該文件每周三發布,包含新的計划 IP 范圍。 新的 IP 范圍將於下周一生效。 我們建議您經常檢查以確保您保持最新列表。

由於 Azure 管理庫中沒有 API 用於 .NET 列出地理區域,因此您必須手動列出它們。

編輯:
這里有一個關閉的(:-但仍然有效)GitHub 問題: AzureDevops 不考慮為“Microsoft 服務”

編輯2:

您的托管代理在與您的組織相同的 Azure 地理位置中運行。 每個地理包含一個或多個區域。 雖然您的代理可能與您的組織在同一區域運行,但不能保證這樣做。 要為您的代理獲取可能的 IP 范圍的完整列表,您必須使用 geography 中包含的所有區域的 IP 范圍 例如,如果您的組織位於美國地理位置,則必須對該地理位置中的所有區域使用 IP 范圍。

要確定您的地理位置,請導航至https://dev.azure.com/<your_organization>/_settings/organizationOverview ,獲取您所在的地區,然后從 Z3A580F142203677F53F 表中找到相關的地理位置。 一旦您確定了您的地理位置,請使用該地理位置中所有區域的每周文件中的 IP 范圍。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM