為您的儲存體容器建立 SAS 權杖
在本文中,您會了解如何使用 Azure 入口網站或 Azure 儲存體總管建立使用者委派、共用存取簽章 (SAS) 權杖。 會使用 Microsoft Entra 認證來保護使用者委派 SAS 權杖。 SAS 權杖會對您 Azure 儲存體帳戶中的資源提供安全的委派存取權。
提示
受控識別提供替代方法,可讓您授與儲存體資料的存取權,而不需要將 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 Blob 儲存體帳戶。 您也必須建立容器,以在儲存體帳戶內儲存和組織檔案。 如果您不知道如何使用儲存體容器建立 Azure 儲存體帳戶,請遵循下列快速入門:
在 Azure 入口網站中建立 SAS 權杖
如下所示,移至 Azure 入口網站並瀏覽至您的容器或特定檔案,繼續執行下列步驟:
建立容器的 SAS 權杖 | 建立特定檔案的 SAS 權杖 |
---|---|
您的儲存體帳戶 → 容器 → 您的容器 | 您的儲存體帳戶 → 容器 → 您的容器 → 您的檔案 |
以滑鼠右鍵按一下容器或檔案,然後從下拉式功能表中選取 [產生 SAS]。
選取 [簽署方法] → [使用者委派金鑰]。
勾選及/或清除適當的核取方塊,以定義 [權限]:
來源容器或檔案必須具有指定的讀取和列出存取權。
目標容器或檔案必須具有指定的寫入和列出存取權。
指定已簽署金鑰的開始和到期時間。
- 當您建立共用存取簽章 (SAS) 時,預設持續時間為 48 小時。 48 小時之後,您必須建立新的權杖。
- 請考慮設定較長的持續時間期間,做為您針對翻譯工具服務作業使用儲存體帳戶的時間。
- 到期時間的值取決於您是否使用帳戶金鑰或使用者委派金鑰簽署方法:
- 帳戶金鑰:雖然未加總時間限制,最佳做法建議您設定到期原則來限制間隔,並將洩漏機率降至最低。 設定共用存取簽章的到期原則。
- 使用者委派金鑰:到期時間值的上限為從建立 SAS 權杖起的七天。 SAS 在使用者委派金鑰到期後會變為無效,因此到期時間超過七天的 SAS 仍僅有七天有效。 如需詳細資訊,請參閱使用 Microsoft Entra 認證來保護 SAS。
[允許的 IP 位址] 欄位是選擇性的,並指定要接受要求的 IP 位址或 IP 位址範圍。 如果要求的 IP 位址不符合 SAS 權杖上指定的 IP 位址或位址範圍,則授權會失敗。 IP 位址或 IP 位址範圍必須是公用 IP,而非私人 IP。 如需詳細資訊,請參閱指定 IP 位址或 IP 範圍。
[允許的通訊協定] 欄位是選擇性的,並且會指定使用 SAS 提出的要求所允許的通訊協定。 預設值是 HTTPS。
檢閱然後選取 [產生 SAS 權杖和 URL]。
[Blob SAS 權杖] 查詢字串和 [Blob SAS URL] 會顯示在視窗的下方區域。
將 Blob SAS 權杖和 URL 值複製並貼到安全的位置。 這些值只會顯示一次,一旦關閉視窗就無法再擷取。
若要建構 SAS URL,請將 SAS 權杖 (URI) 附加至儲存體服務的 URL。
使用 Azure 儲存體總管建立 SAS 權杖
Azure 儲存體總管是免費的獨立應用程式,可讓您從桌面輕鬆地管理 Azure 雲端儲存體資源。
您需要在 Windows、macOS 或 Linux 開發環境中安裝 Azure 儲存體總管應用程式。
安裝 Azure 儲存體總管應用程式之後,將其連線至儲存體帳戶,這是您要用於文件翻譯的帳戶。 請遵循下列步驟來建立儲存體容器或特定 Blob 檔案的權杖:
開啟本機電腦上的 Azure 儲存體總管應用程式,並瀏覽至您連線的儲存體帳戶。
展開儲存體帳戶節點並選取 [Blob 容器]。
展開 [Blob 容器] 節點,並以滑鼠右鍵按一下儲存體 [容器] 節點,以顯示選項功能表。
從選項功能表選取 [取得共用存取簽章...]。
在 [共用存取簽章] 視窗中,進行下列選擇:
- 選取您的 [存取原則] (預設值為 [無])。
- 指定已簽署金鑰的開始和到期日期和時間。 建議使用較短的生命週期,因為一旦產生,就無法撤銷 SAS。
- 選取開始和到期日期和時間的 [時區] (預設值為 [本地])。
- 勾選及/或清除適當的核取方塊,以定義您的容器 [權限]。
- 檢閱並選取 [建立]。
新的視窗隨即出現,其中包含容器的容器名稱、URI 和查詢字串。
將容器、URI 和查詢字串值複製並貼到安全的位置。 這些值只會顯示一次,一旦關閉視窗就無法再擷取。
若要建構 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 權杖,以針對用戶端存取資料的方式進行授權。