文件

批次金鑰輪換

MinIO 版本新增:RELEASE.2023-04-07T05-28-58Z

MinIO 批次架構可讓您使用 YAML 格式的作業定義檔(「批次檔」)建立、管理、監控和執行作業。批次作業直接在 MinIO 部署上執行,以利用伺服器端處理能力,而不受您執行MinIO 用戶端的本機電腦限制。

keyrotate 批次作業類型會循環 MinIO 部署上已加密物件的sse-s3 或 sse-kms 金鑰

YAML 設定支援篩選器,可透過建立日期、標籤、中繼資料或 kms 金鑰,將金鑰輪換限制為特定物件集。您也可以定義重試次數,或設定通知端點和權杖。

金鑰輪換批次作業參考

MinIO 版本新增:RELEASE.2023-04-07T05-28-58Z

使用 keyrotate 作業類型建立批次作業,以循環已加密物件的sse-s3 或 sse-kms 金鑰

必要欄位

type

sse-s3sse-kms

key

僅用於 sse-kms 類型。用於解封金鑰保存庫的金鑰。

context

僅用於 sse-kms 類型。執行動作的內容。

選用欄位

對於基於旗標的篩選器

newerThan

#d#h#s 格式表示時間長度的字串。

僅針對比指定時間長度新的物件輪換金鑰。例如,7d24h5d12h30s 是有效的字串。

olderThan

#d#h#s 格式表示時間長度的字串。

僅針對比指定時間長度舊的物件輪換金鑰。

createdAfter

YYYY-MM-DD 格式表示的日期。

僅針對該日期之後建立的物件輪換金鑰。

createdBefore

YYYY-MM-DD 格式表示的日期。

僅針對該日期之前建立的物件輪換金鑰。

標籤

僅針對具有符合指定 key:value: 的標籤的物件輪換金鑰。

中繼資料

僅針對具有符合指定 key:value: 的中繼資料的物件輪換金鑰。

kmskey

僅針對具有符合指定值的 KMS 金鑰 ID 的物件輪換金鑰。這僅適用於 sse-kms 類型。

關於 通知

端點

用於發送通知事件的預定義端點。

權杖

一個可選的 JSON Web Token (JWT) 用於存取 endpoint

關於 重試次數

如果任務被中斷,您可以定義最大重試次數。對於每次重試,您還可以定義每次嘗試之間的等待時間。

嘗試次數

在放棄之前完成批次工作的嘗試次數。

延遲

每次嘗試之間等待的時間。

用於 keyrotate 工作類型的範例 YAML 描述檔案

使用 mc batch generate 建立一個基本的 keyrotate 批次工作,以便進一步客製化。

keyrotate:
  apiVersion: v1
  bucket: BUCKET
  prefix: PREFIX
  encryption:
    type: sse-s3 # valid values are sse-s3 and sse-kms
    key: <new-kms-key> # valid only for sse-kms
    context: <new-kms-key-context> # valid only for sse-kms

  # optional flags based filtering criteria
  # for all objects
  flags:
    filter:
      newerThan: "7d" # match objects newer than this value (e.g. 7d10h31s)
      olderThan: "7d" # match objects older than this value (e.g. 7d10h31s)
      createdAfter: "date" # match objects created after "date"
      createdBefore: "date" # match objects created before "date"
      tags:
        - key: "name"
          value: "pick*" # match objects with tag 'name', with all values starting with 'pick'
      metadata:
        - key: "content-type"
          value: "image/*" # match objects with 'content-type', with all values starting with 'image/'
      kmskey: "key-id" # match objects with KMS key-id (applicable only for sse-kms)
    notify:
      endpoint: "https://notify.endpoint" # notification endpoint to receive job status events
      token: "Bearer xxxxx" # optional authentication token for the notification endpoint
    retry:
      attempts: 10 # number of retries for the job before giving up
      delay: "500ms" # least amount of delay between each retry