為您的儲存體容器建立 SAS 權杖

在本文中,您會了解如何使用 Azure 入口網站或 Azure 儲存體總管建立使用者委派、共用存取簽章 (SAS) 權杖。 會使用 Microsoft Entra 認證來保護使用者委派 SAS 權杖。 SAS 權杖會對您 Azure 儲存體帳戶中的資源提供安全的委派存取權。

Screenshot of a storage url with SAS token appended.

提示

受控識別提供替代方法,可讓您授與儲存體資料的存取權,而不需要將 SAS 權杖包含在 HTTP 要求中。 請參閱文件翻譯的受控識別

  • 您可以使用受控識別,對支援 Microsoft Entra 驗證的任何資源 (包括您自己的應用程式) 授與存取權。
  • 使用受控識別可取代您在來源和目標 URL 包含共用存取簽章權杖 (SAS) 的需求。
  • 在 Azure 中使用受控識別不會產生額外的成本。

概括而言,以下是 SAS 權杖的運作方式:

  • 應用程式會將 SAS 權杖提交至 Azure 儲存體,作為 REST API 要求的一部分。

  • 儲存體服務會驗證 SAS 是否有效。 如果仍有效,則會授權要求。

  • 如果 SAS 權杖被視為無效,則會拒絕此要求。 若是如此,則會傳回錯誤碼 403 (禁止)。

Azure Blob 儲存體提供三種資源類型:

  • 儲存體帳戶可在 Azure 中為您的資料提供唯一命名空間。
  • 資料儲存體容器位於儲存體帳戶,用於組織 Blob 集合 (檔案、文字或影像)。
  • Blob 位於容器中,用於儲存文字和二進位資料,例如檔案、文字和映像。

重要

  • SAS 權杖用於授與儲存體資源的權限,而且應該採用與帳戶金鑰相同的方式加以保護。

  • 使用 SAS 權杖的作業應該只透過 HTTPS 連線執行,而 SAS URI 只應在安全連線 (例如 HTTPS) 上散發。

必要條件

若要開始使用,您需要下列資源:

  • 作用中的 Azure 帳戶。 如果您沒有帳戶,您可以建立免費帳戶

  • 翻譯工具資源。

  • 標準效能Azure Blob 儲存體帳戶。 您也必須建立容器,以在儲存體帳戶內儲存和組織檔案。 如果您不知道如何使用儲存體容器建立 Azure 儲存體帳戶,請遵循下列快速入門:

    • 建立儲存體帳戶。 建立儲存體帳戶時,請選取 [標準] 效能 (位於 [執行個體詳細資料]>[效能] 欄位中)。
    • 建立容器。 建立容器時,請在 [新增容器] 視窗中,將 [公用存取層級] 設定為 [容器] (容器和檔案的匿名讀取權限)。

在 Azure 入口網站中建立 SAS 權杖

如下所示,移至 Azure 入口網站並瀏覽至您的容器或特定檔案,繼續執行下列步驟:

建立容器的 SAS 權杖 建立特定檔案的 SAS 權杖
您的儲存體帳戶容器您的容器 您的儲存體帳戶容器您的容器您的檔案
  1. 以滑鼠右鍵按一下容器或檔案,然後從下拉式功能表中選取 [產生 SAS]

  2. 選取 [簽署方法] → [使用者委派金鑰]

  3. 勾選及/或清除適當的核取方塊,以定義 [權限]

    • 來源容器或檔案必須具有指定的讀取列出存取權。

    • 目標容器或檔案必須具有指定的寫入列出存取權。

  4. 指定已簽署金鑰的開始到期時間。

    • 當您建立共用存取簽章 (SAS) 時,預設持續時間為 48 小時。 48 小時之後,您必須建立新的權杖。
    • 請考慮設定較長的持續時間期間,做為您針對翻譯工具服務作業使用儲存體帳戶的時間。
    • 到期時間的值取決於您是否使用帳戶金鑰使用者委派金鑰簽署方法
      • 帳戶金鑰:雖然未加總時間限制,最佳做法建議您設定到期原則來限制間隔,並將洩漏機率降至最低。 設定共用存取簽章的到期原則
      • 使用者委派金鑰:到期時間值的上限為從建立 SAS 權杖起的七天。 SAS 在使用者委派金鑰到期後會變為無效,因此到期時間超過七天的 SAS 仍僅有七天有效。 如需詳細資訊,請參閱使用 Microsoft Entra 認證來保護 SAS
  5. [允許的 IP 位址] 欄位是選擇性的,並指定要接受要求的 IP 位址或 IP 位址範圍。 如果要求的 IP 位址不符合 SAS 權杖上指定的 IP 位址或位址範圍,則授權會失敗。 IP 位址或 IP 位址範圍必須是公用 IP,而非私人 IP。 如需詳細資訊,請參閱指定 IP 位址或 IP 範圍

  6. [允許的通訊協定] 欄位是選擇性的,並且會指定使用 SAS 提出的要求所允許的通訊協定。 預設值是 HTTPS。

  7. 檢閱然後選取 [產生 SAS 權杖和 URL]

  8. [Blob SAS 權杖] 查詢字串和 [Blob SAS URL] 會顯示在視窗的下方區域。

  9. 將 Blob SAS 權杖和 URL 值複製並貼到安全的位置。 這些值只會顯示一次,一旦關閉視窗就無法再擷取。

  10. 若要建構 SAS URL,請將 SAS 權杖 (URI) 附加至儲存體服務的 URL。

使用 Azure 儲存體總管建立 SAS 權杖

Azure 儲存體總管是免費的獨立應用程式,可讓您從桌面輕鬆地管理 Azure 雲端儲存體資源。

  • 您需要在 Windows、macOS 或 Linux 開發環境中安裝 Azure 儲存體總管應用程式。

  • 安裝 Azure 儲存體總管應用程式之後,將其連線至儲存體帳戶,這是您要用於文件翻譯的帳戶。 請遵循下列步驟來建立儲存體容器或特定 Blob 檔案的權杖:

  1. 開啟本機電腦上的 Azure 儲存體總管應用程式,並瀏覽至您連線的儲存體帳戶

  2. 展開儲存體帳戶節點並選取 [Blob 容器]

  3. 展開 [Blob 容器] 節點,並以滑鼠右鍵按一下儲存體 [容器] 節點,以顯示選項功能表。

  4. 從選項功能表選取 [取得共用存取簽章...]

  5. 在 [共用存取簽章] 視窗中,進行下列選擇:

    • 選取您的 [存取原則] (預設值為 [無])。
    • 指定已簽署金鑰的開始到期日期和時間。 建議使用較短的生命週期,因為一旦產生,就無法撤銷 SAS。
    • 選取開始和到期日期和時間的 [時區] (預設值為 [本地])。
    • 勾選及/或清除適當的核取方塊,以定義您的容器 [權限]
    • 檢閱並選取 [建立]
  6. 新的視窗隨即出現,其中包含容器的容器名稱、URI查詢字串

  7. 將容器、URI 和查詢字串值複製並貼到安全的位置。 這些值只會顯示一次,一旦關閉視窗就無法再擷取。

  8. 若要建構 SAS URL,請將 SAS 權杖 (URI) 附加至儲存體服務的 URL。

使用 SAS URL 授與存取權

SAS URL 包括一組特殊的查詢參數。 這些參數會指出用戶端如何存取資源。

您可利用兩種方式,包含具有 REST API 要求的 SAS URL:

  • 使用 SAS URL 作為您的 sourceURL 和 targetURL 值。

  • SAS 查詢字串附加至現有的 sourceURL 和 targetURL 值。

以下是範例 REST API 要求:

{
    "inputs": [
        {
            "storageType": "File",
            "source": {
                "sourceUrl": "https://my.blob.core.windows.net/source-en/source-english.docx?sv=2019-12-12&st=2021-01-26T18%3A30%3A20Z&se=2021-02-05T18%3A30%3A00Z&sr=c&sp=rl&sig=d7PZKyQsIeE6xb%2B1M4Yb56I%2FEEKoNIF65D%2Fs0IFsYcE%3D"
            },
            "targets": [
                {
                    "targetUrl": "https://my.blob.core.windows.net/target/try/Target-Spanish.docx?sv=2019-12-12&st=2021-01-26T18%3A31%3A11Z&se=2021-02-05T18%3A31%3A00Z&sr=c&sp=wl&sig=AgddSzXLXwHKpGHr7wALt2DGQJHCzNFF%2F3L94JHAWZM%3D",
                    "language": "es"
                },
                {
                    "targetUrl": "https://my.blob.core.windows.net/target/try/Target-German.docx?sv=2019-12-12&st=2021-01-26T18%3A31%3A11Z&se=2021-02-05T18%3A31%3A00Z&sr=c&sp=wl&sig=AgddSzXLXwHKpGHr7wALt2DGQJHCzNFF%2F3L94JHAWZM%3D",
                    "language": "de"
                }
            ]
        }
    ]
}

介紹完畢 您剛了解如何建立 SAS 權杖,以針對用戶端存取資料的方式進行授權。

下一步