Package google.storagetransfer.v1

索引

StorageTransferService

Storage 移轉服務及其原型檔。在 Google Cloud Storage 值區之間轉移資料,或將 Google 以外的資料來源轉移至 Cloud Storage 值區。

CreateAgentPool

rpc CreateAgentPool(CreateAgentPoolRequest) returns (AgentPool)

建立代理程式集區資源。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

CreateTransferJob

rpc CreateTransferJob(CreateTransferJobRequest) returns (TransferJob)

建立定期執行的移轉工作。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

DeleteAgentPool

rpc DeleteAgentPool(DeleteAgentPoolRequest) returns (Empty)

刪除代理程式集區。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

DeleteTransferJob

rpc DeleteTransferJob(DeleteTransferJobRequest) returns (Empty)

刪除轉移工作。刪除轉移工作後,系統會將其狀態設為 DELETED

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

GetAgentPool

rpc GetAgentPool(GetAgentPoolRequest) returns (AgentPool)

取得代理程式集區。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

GetGoogleServiceAccount

rpc GetGoogleServiceAccount(GetGoogleServiceAccountRequest) returns (GoogleServiceAccount)

傳回 Storage 移轉服務用來存取執行移轉作業的專案或其他專案中值區的 Google 服務帳戶。每個 Google 服務帳戶都會與一個 Google Cloud 專案相關聯。使用者應將這個服務帳戶新增至 Google Cloud Storage 值區 ACL,授予 Storage 移轉服務存取權。這個服務帳戶是由 Storage 移轉服務建立及擁有,只能由 Storage 移轉服務使用。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

GetTransferJob

rpc GetTransferJob(GetTransferJobRequest) returns (TransferJob)

取得轉移工作。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

ListAgentPools

rpc ListAgentPools(ListAgentPoolsRequest) returns (ListAgentPoolsResponse)

列出代理程式集區。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

ListTransferJobs

rpc ListTransferJobs(ListTransferJobsRequest) returns (ListTransferJobsResponse)

列出移轉工作。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

PauseTransferOperation

rpc PauseTransferOperation(PauseTransferOperationRequest) returns (Empty)

暫停轉移作業。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

ResumeTransferOperation

rpc ResumeTransferOperation(ResumeTransferOperationRequest) returns (Empty)

繼續暫停的轉移作業。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

RunTransferJob

rpc RunTransferJob(RunTransferJobRequest) returns (Operation)

為指定的轉移工作啟動新作業。一個 TransferJob 最多只能有一個有效的 TransferOperation。如果在 TransferOperation 處於作用中時呼叫此方法,系統會傳回錯誤。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

UpdateAgentPool

rpc UpdateAgentPool(UpdateAgentPoolRequest) returns (AgentPool)

更新現有的代理程式資源集區。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

UpdateTransferJob

rpc UpdateTransferJob(UpdateTransferJobRequest) returns (TransferJob)

更新轉移工作。更新工作移轉規格不會影響到目前執行中的移轉作業。

注意:您可以使用這個 RPC 修改工作 status 欄位 (例如將工作狀態設為 DELETEDDISABLEDENABLED)。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱 Authentication Overview

AgentPool

代表代理程式集區。

欄位
name

string

這是必要旗標,指定用於識別代理程式集區的專屬字串。

格式:projects/{project_id}/agentPools/{agent_pool_id}

display_name

string

指定用戶端指定的 AgentPool 說明。

state

State

僅供輸出。指定 AgentPool 的狀態。

bandwidth_limit

BandwidthLimit

指定頻寬限制詳細資料。如未指定此欄位,則預設值會設為「無限制」。

BandwidthLimit

指定代理程式集區的頻寬限制。

欄位
limit_mbps

int64

頻寬速率,以每秒 MB 為單位,並分散至集區中的所有代理程式。

狀態

AgentPool 的狀態。

列舉
STATE_UNSPECIFIED 預設值。此值未使用。
CREATING 這是初始化狀態。在此階段,系統會為 AgentPool 分配資源。
CREATED 判斷是否已建立 AgentPool 以供使用。在這個狀態下,Agents 可以加入 AgentPool,並參與該集區中的轉移工作。
DELETING 判斷 AgentPool 刪除作業已啟動,並且所有資源都已排定清理及釋出。

AwsAccessKey

AWS 存取金鑰 (請參閱「AWS 安全性憑證」)。

如要瞭解使用者憑證的資料保留政策,請參閱「使用者憑證」。

欄位
access_key_id

string

這是必要旗標,AWS 存取金鑰 ID。

secret_access_key

string

這是必要旗標,AWS 私密存取金鑰。RPC 回應中不會傳回這個欄位。

AwsS3CompatibleData

AwsS3CompatibleData 資源。

欄位
bucket_name

string

這是必要旗標,指定值區名稱。

path

string

指定用來轉移物件的根路徑。

必須是空字串或以「/」結尾的完整路徑名稱。這個欄位會視為物件前置字串。因此,一般不應以「/」開頭。

endpoint

string

這是必要旗標,指定儲存空間服務的端點。

region

string

指定用於簽署要求的區域。如果要求應使用空白區域簽署,則可將此欄位留空。

聯集欄位 data_provider。指定 S3 相容資料供應器的中繼資料。每個供應器可能包含一些不適用於所有 S3 相容資料供應器的屬性。如未指定,系統會預設使用 S3CompatibleMetadata。data_provider 只能是下列其中一項:
s3_metadata

S3CompatibleMetadata

與 S3 相容的中繼資料。

AwsS3Data

AwsS3Data 資源可以是資料來源,但不是資料接收來源。在 AwsS3Data 資源中,物件的名稱是 S3 物件的鍵名稱。

欄位
bucket_name

string

這是必要旗標,S3 值區名稱 (請參閱「建立值區」)。

aws_access_key

AwsAccessKey

僅限輸入。用於簽署 AWS S3 值區 API 要求的 AWS 存取金鑰。必須將值區的權限授予 AWS 存取金鑰的存取 ID。

如要瞭解使用者憑證的資料保留政策,請參閱「使用者憑證」。

path

string

用於傳輸物件的根路徑。

必須是空字串或以「/」結尾的完整路徑名稱。這個欄位會視為物件前置字串。因此,一般不應以「/」開頭。

role_arn

string

透過 AssumeRoleWithWebIdentity 支援臨時憑證的角色 Amazon Resource Name (ARN)。如要進一步瞭解 ARN,請參閱「IAM ARN」。

提供角色 ARN 時,移轉服務會使用此專案的 GoogleServiceAccount,針對提供的角色使用 AssumeRoleWithWebIdentity 呼叫,擷取工作階段的臨時憑證。

cloudfront_domain

string

(非必要) 指向這個值區的 CloudFront 發布網域名稱,用於擷取時使用。

詳情請參閱「透過 CloudFront 從 S3 轉移資料」。

格式:https://{id}.cloudfront.net 或任何有效的自訂網域。必須以 https:// 開頭。

credentials_secret

string

(非必要) Secret Manager 中密鑰的資源名稱。

AWS 憑證必須以 JSON 格式儲存在 Secret Manager 中:

{ "access_key_id": "ACCESS_KEY_ID", "secret_access_key": "SECRET_ACCESS_KEY" }

GoogleServiceAccount 必須獲得資源的 roles/secretmanager.secretAccessor 權限。

詳情請參閱「設定來源存取權:Amazon S3」。

如果指定 credentials_secret,請勿指定 role_arnaws_access_key

格式:projects/{project_number}/secrets/{secret_name}

聯集欄位 private_network

private_network 只能是下列其中一項:

managed_private_network

bool

透過 Google 代管的私人網路傳出的位元組數。這個網路會與儲存空間轉移服務的其他使用者共用。

AzureBlobStorageData

AzureBlobStorageData 資源可以做為資料來源,但不能做為資料接收端。AzureBlobStorageData 資源代表一個 Azure 容器。儲存體帳戶會決定 Azure 端點。在 AzureBlobStorageData 資源中,Blob 的名稱是 Azure Blob 儲存體 Blob 的鍵名稱

欄位
storage_account

string

這是必要旗標,Azure 儲存體帳戶名稱。

azure_credentials

AzureCredentials

這是必要旗標,僅限輸入。用於驗證 Azure API 要求的憑證。

如要瞭解使用者憑證的資料保留政策,請參閱「使用者憑證」。

container

string

這是必要旗標,從 Azure 儲存體帳戶轉移的容器。

path

string

用於傳輸物件的根路徑。

必須是空字串或以「/」結尾的完整路徑名稱。這個欄位會視為物件前置字串。因此,一般不應以「/」開頭。

credentials_secret

string

(非必要) Secret Manager 中密鑰的資源名稱。

Azure SAS 權杖必須以 JSON 格式儲存在 Secret Manager 中:

{ "sas_token" : "SAS_TOKEN" }

GoogleServiceAccount 必須獲得資源的 roles/secretmanager.secretAccessor 權限。

詳情請參閱「設定來源存取權:Microsoft Azure Blob 儲存體」。

如果指定 credentials_secret,請勿指定 azure_credentials

格式:projects/{project_number}/secrets/{secret_name}

AzureCredentials

Azure 憑證

如要瞭解使用者憑證的資料保留政策,請參閱「使用者憑證」。

欄位
sas_token

string

這是必要旗標,Azure 共用存取簽章 (SAS)。

如要進一步瞭解 SAS,請參閱「使用共用存取簽章 (SAS) 授予 Azure Storage 資源的限制存取權」。

CreateAgentPoolRequest

指定傳送至 CreateAgentPool 的要求。

欄位
project_id

string

這是必要旗標,擁有代理程式集區的 Google Cloud 專案 ID。

授權需要指定資源 projectId 的下列 IAM 權限:

  • storagetransfer.agentpools.create
agent_pool

AgentPool

這是必要旗標,要建立的代理程式集區。

agent_pool_id

string

這是必要旗標,要建立的代理程式集區 ID。

agent_pool_id 必須符合下列規定:

  • 長度不得超過 128 個半形字元。
  • 開頭不是字串 goog
  • 開頭必須是小寫 ASCII 字元,後方可接:
    • 零個以上:小寫拉丁字母、數字、連字號 (-)、句號 (.)、底線 (_) 或波浪號 (~)。
    • 一或多個數字或 ASCII 小寫字元。

如規則運算式所示:^(?!goog)[a-z]([a-z0-9-._~]*[a-z0-9])?$

CreateTransferJobRequest

傳遞至 CreateTransferJob 的要求。

欄位
transfer_job

TransferJob

這是必要旗標,要建立的工作。

授權需要指定資源 transferJob 的下列 IAM 權限:

  • storagetransfer.jobs.create

DeleteAgentPoolRequest

指定傳遞至 DeleteAgentPool 的要求。

欄位
name

string

這是必要旗標,要刪除的代理程式集區名稱。

授權需要指定資源 name 的下列 IAM 權限:

  • storagetransfer.agentpools.delete

DeleteTransferJobRequest

要求已傳送至 DeleteTransferJob。

欄位
job_name

string

這是必要旗標,要刪除的工作。

授權需要指定資源 jobName 的下列 IAM 權限:

  • storagetransfer.jobs.delete
project_id

string

這是必要旗標,擁有工作項目的 Google Cloud 專案 ID。

ErrorLogEntry

描述發生錯誤的項目。

欄位
url

string

這是必要旗標,指向與錯誤相關聯的目標 (資料來源、資料接收端或物件) 的網址。

error_details[]

string

包含錯誤詳細資料的訊息清單。

ErrorSummary

依據錯誤代碼提供錯誤摘要,以及錯誤記錄項目的計數和範例。

欄位
error_code

Code

必填。

error_count

int64

這是必要旗標,這類錯誤的計數。

error_log_entries[]

ErrorLogEntry

錯誤範例。

針對單一轉移作業的特定錯誤代碼,最多會記錄 5 個錯誤記錄項目。

EventStream

指定事件導向轉移選項。事件導向轉移作業會監聽事件串流,以便傳輸更新的檔案。

欄位
name

string

這是必要旗標,指定資源的專屬名稱,例如 AWS SQS ARN,格式為「arn:aws:sqs:region:account_id:queue_name」;或 Pub/Sub 訂閱資源名稱,格式為「projects/{project}/subscriptions/{sub}」。

event_stream_start_time

Timestamp

指定 Storage 移轉服務開始監聽此串流事件的日期和時間。如果未指定開始時間,或開始時間已過,Storage Transfer Service 會立即開始監聽。

event_stream_expiration_time

Timestamp

指定 Storage 移轉服務停止監聽此串流事件的日期和時間。在這個時間過後,系統會完成所有進行中的轉移作業,但不會啟動新的轉移作業。

GcsData

在 GcsData 資源中,物件的名稱是 Cloud Storage 物件的名稱,而「上次修改時間」則是指 Cloud Storage 物件的 updated 屬性,這會在物件的內容或中繼資料更新時變更。

欄位
bucket_name

string

這是必要旗標,Cloud Storage 值區名稱。必須符合值區命名規定

path

string

用於傳輸物件的根路徑。

必須是空字串或以「/」結尾的完整路徑名稱。這個欄位會視為物件前置字串。因此,一般不應以「/」開頭。

根路徑值必須符合物件名稱規定

managed_folder_transfer_enabled

bool

預覽。允許在 Cloud Storage 值區之間轉移受管理的資料夾。請在 gcs_data_source 上設定這個選項。

如果設為 true:

  • 來源值區中的受管理資料夾會轉移至目的地值區。
  • 目的地值區中的代管資料夾會遭到覆寫。不支援其他覆寫選項。

請參閱「轉移 Cloud Storage 受控資料夾」。

GetAgentPoolRequest

指定傳送至 GetAgentPool 的要求。

欄位
name

string

這是必要旗標,要取得的代理程式集區名稱。

授權需要指定資源 name 的下列 IAM 權限:

  • storagetransfer.agentpools.get

GetGoogleServiceAccountRequest

傳送至 GetGoogleServiceAccount 的要求。

欄位
project_id

string

這是必要旗標,Google 服務帳戶相關聯的 Google Cloud 專案 ID。

授權需要指定資源 projectId 的下列 IAM 權限:

  • storagetransfer.projects.getServiceAccount

GetTransferJobRequest

傳遞至 GetTransferJob 的要求。

欄位
job_name

string

這是必要旗標,要取得的工作。

授權需要指定資源 jobName 的下列 IAM 權限:

  • storagetransfer.jobs.get
project_id

string

這是必要旗標,擁有工作項目的 Google Cloud 專案 ID。

GoogleServiceAccount

Google 服務帳戶

欄位
account_email

string

服務帳戶的電子郵件地址。

subject_id

string

服務帳戶的專屬 ID。

HdfsData

HdfsData 資源會指定 HDFS 實體 (例如叢集) 中的路徑。所有叢集專屬設定 (例如名稱節點和連接埠) 都會在服務要求的轉移代理程式上設定,因此 HdfsData 只會包含轉移中資料的根路徑。

欄位
path

string

檔案傳輸的根路徑。

HttpData

HttpData 資源會指定要透過 HTTP 傳輸的網路物件清單。要轉移的物件資訊包含在網址參照的檔案中。檔案的第一行必須是 "TsvHttpData-1.0",用於指定檔案格式。後續行會指定物件清單的資訊,每個清單項目一個物件。每個項目都包含下列以 Tab 分隔的欄位:

  • HTTP 網址:物件的位置。

  • Length:物件大小 (以位元組為單位)。

  • MD5:物件的 Base64 編碼 MD5 雜湊。

如需有效 TSV 檔案的範例,請參閱「從網址轉移資料」。

根據網址清單移轉資料時,請注意下列事項:

  • 當位於 http(s)://hostname:port/<URL-path> 的物件轉移至資料接收器時,資料接收器中的物件名稱為 <hostname>/<URL-path>

  • 如果物件的指定大小與擷取的物件實際大小不符,系統就不會移轉物件。

  • 如果指定的 MD5 與從移轉位元組計算所得的 MD5 不相符,物件移轉就會失敗。

  • 您所指定的每個網址皆須可供公開存取。例如在 Cloud Storage 中,您可以公開共用物件並取得該物件的連結。

  • 儲存空間傳輸服務會遵循 robots.txt 規則,並要求來源 HTTP 伺服器支援 Range 要求,並在每個回應中傳回 Content-Length 標頭。

  • ObjectConditions 在篩選要轉移的物件時不會有任何作用。

欄位
list_url

string

這是必要旗標,指向儲存物件清單項目的檔案網址。這個檔案必須允許公開存取。網址可以是 HTTP/HTTPS 位址 (例如 https://example.com/urllist.tsv),或是 Cloud Storage 路徑 (例如 gs://my-bucket/urllist.tsv)。

ListAgentPoolsRequest

傳遞至 ListAgentPools 的要求。

欄位
project_id

string

這是必要旗標,擁有工作項目的 Google Cloud 專案 ID。

授權需要指定資源 projectId 的下列 IAM 權限:

  • storagetransfer.agentpools.list
filter

string

選用的查詢參數清單,以 JSON 文字的形式指定,格式如下:

{"agentPoolNames":["agentpool1","agentpool2",...]}

agentPoolNames 支援多個值,因此必須使用陣列符號指定其值。如果篩選器為空白或未提供,清單會傳回專案的所有代理程式集區。

page_size

int32

清單頁面大小。允許的最大值為 256

page_token

string

清單頁面憑證。

ListAgentPoolsResponse

ListAgentPools 的回應。

欄位
agent_pools[]

AgentPool

代理程式集區清單。

next_page_token

string

清單下一頁憑證。

ListTransferJobsRequest

projectIdjobNamesjobStatuses 是查詢參數,可在列出轉移工作時指定。

欄位
filter

string

這是必要旗標,以 JSON 文字格式指定的查詢參數清單,格式如下:

{
  "projectId":"my_project_id",
  "jobNames":["jobid1","jobid2",...],
  "jobStatuses":["status1","status2",...],
  "dataBackend":"QUERY_REPLICATION_CONFIGS",
  "sourceBucket":"source-bucket-name",
  "sinkBucket":"sink-bucket-name",
}

範例中的 JSON 格式僅供顯示;請提供不含空格或換行符號的查詢參數。

  • projectId」為必填欄位。
  • jobNamesjobStatuses 支援多個值,因此必須使用陣列符號指定其值。jobNamesjobStatuses 為選用欄位。有效值不區分大小寫:
  • 指定 "dataBackend":"QUERY_REPLICATION_CONFIGS" 即可傳回跨值區複製作業清單。
  • 使用 sourceBucket 和/或 sinkBucket 限制結果,只顯示特定分桶的工作。

授權需要指定資源 filter 的下列 IAM 權限:

  • storagetransfer.jobs.list
page_size

int32

清單頁面大小。允許的最大值為 256。

page_token

string

清單頁面符記。

ListTransferJobsResponse

ListTransferJobs 的回應。

欄位
transfer_jobs[]

TransferJob

移轉工作的清單。

next_page_token

string

清單下一頁憑證。

LoggingConfig

指定轉移作業的記錄行為。

所有移轉類型都可以將記錄檔傳送至 Cloud Logging。詳情請參閱「讀取轉移記錄」。

欄位
log_actions[]

LoggableAction

指定要記錄的動作。如果留空,系統就不會產生任何記錄。

log_action_states[]

LoggableActionState

記錄 log_actions 的狀態。如果留空,系統就不會產生任何記錄。

enable_onprem_gcs_transfer_logs

bool

針對 PosixFilesystem 轉移作業,請啟用檔案系統轉移記錄,而非或除了 Cloud Logging。

這個選項會忽略 [LoggableAction] 和 [LoggableActionState]。如果設定了這些項目,系統也會為這項轉移作業啟用 Cloud Logging。

LoggableAction

可記錄的動作。

列舉
LOGGABLE_ACTION_UNSPECIFIED 預設值。此值未使用。
FIND 列出值區中的物件。
DELETE 刪除來源或目的地中的物件。
COPY 將物件複製到目的地。

LoggableActionState

可記錄的動作狀態。

列舉
LOGGABLE_ACTION_STATE_UNSPECIFIED 預設值。此值未使用。
SUCCEEDED LoggableAction 已順利完成。SUCCEEDED 動作會記錄為 INFO
FAILED LoggableAction 在錯誤狀態下終止。FAILED 動作會記錄為 ERROR
SKIPPED 已略過這個檔案的 COPY 動作。僅支援以代理人為基礎的轉移作業。SKIPPED 動作會記錄為 INFO

MetadataOptions

指定執行移轉作業的中繼資料選項。

欄位
mode

Mode

指定轉移作業應如何處理每個檔案的模式屬性。根據預設,系統不會保留模式。僅適用於涉及 POSIX 檔案系統的轉移作業,其他轉移作業會忽略此選項。

gid

GID

指定系統應如何處理每個檔案的 POSIX 群組 ID (GID) 屬性。根據預設,系統不會保留 GID。僅適用於涉及 POSIX 檔案系統的轉移作業,其他轉移作業會忽略此選項。

uid

UID

指定轉移作業應如何處理每個檔案的 POSIX 使用者 ID (UID) 屬性。根據預設,系統不會保留 UID。僅適用於涉及 POSIX 檔案系統的轉移作業,其他轉移作業會忽略此選項。

acl

Acl

指定在 Google Cloud Storage 值區之間轉移時,應如何保留每個物件的 ACL。如果未指定,預設行為與 ACL_DESTINATION_BUCKET_DEFAULT 相同。

storage_class

StorageClass

指定要為傳輸至 Google Cloud Storage 值區的物件設定的儲存空間級別。如果未指定,則預設行為與 STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT 相同。

temporary_hold

TemporaryHold

指定在 Google Cloud Storage 值區之間移轉時,應如何保留每個物件的暫時保留狀態。如果未指定,則預設行為與 TEMPORARY_HOLD_PRESERVE 相同。

kms_key

KmsKey

指定如何保留每個物件的 Cloud KMS 客戶管理加密金鑰 (CMEK),以便在 Google Cloud Storage 值區之間進行移轉。如果未指定,則預設行為與 KMS_KEY_DESTINATION_BUCKET_DEFAULT 相同。

time_created

TimeCreated

指定如何保留每個物件的 timeCreated 中繼資料,以便進行轉移。如果未指定,則預設行為與 TIME_CREATED_SKIP 相同。這項行為適用於從 Cloud Storage、Amazon S3、S3 相容儲存空間和 Azure 來源,將資料移轉至 Cloud Storage 值區的情況。

Acl

處理 Cloud Storage 物件 ACL 的選項。

列舉
ACL_UNSPECIFIED 未指定 ACL 行為。
ACL_DESTINATION_BUCKET_DEFAULT 使用目標值區的預設物件 ACL (如適用)。
ACL_PRESERVE 保留物件的原始 ACL。這需要服務帳戶具備來源物件的 storage.objects.getIamPolicy 權限。來源或目的地值區不得啟用統一值區層級存取權

GID

處理檔案 GID 屬性的選項。

列舉
GID_UNSPECIFIED 未指定 GID 行為。
GID_SKIP 在轉移作業期間,請勿保留 GID。
GID_NUMBER 在轉移工作期間保留 GID。

KmsKey

處理 Google Cloud Storage 物件 KmsKey 設定的選項。

列舉
KMS_KEY_UNSPECIFIED 未指定 KmsKey 行為。
KMS_KEY_DESTINATION_BUCKET_DEFAULT 使用目標值區的預設加密設定。
KMS_KEY_PRESERVE 保留物件的原始 Cloud KMS 客戶管理加密金鑰 (CMEK) (如有)。不使用 Cloud KMS 加密金鑰的物件,會使用目的地儲存格中的加密設定進行加密。

模式

處理檔案模式屬性的選項。

列舉
MODE_UNSPECIFIED 未指定模式行為。
MODE_SKIP 在轉移作業期間,請勿保留模式。
MODE_PRESERVE 在轉移工作期間保留模式。

StorageClass

處理 Google Cloud Storage 物件儲存空間類別的選項。

列舉
STORAGE_CLASS_UNSPECIFIED 未指定儲存空間級別行為。
STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT 使用目標值區的預設儲存空間級別。
STORAGE_CLASS_PRESERVE 保留物件的原始儲存空間級別。這項功能僅支援從 Google Cloud Storage 值區進行的轉移作業。REGIONAL 和 MULTI_REGIONAL 儲存空間級別會對應至 STANDARD,確保可寫入目的地值區。
STORAGE_CLASS_STANDARD 將儲存空間級別設為 STANDARD。
STORAGE_CLASS_NEARLINE 將儲存空間級別設為 NEARLINE。
STORAGE_CLASS_COLDLINE 將儲存空間級別設為 COLDLINE。
STORAGE_CLASS_ARCHIVE 將儲存空間級別設為 ARCHIVE。

TemporaryHold

處理 Google Cloud Storage 物件暫時保留狀態的選項。

列舉
TEMPORARY_HOLD_UNSPECIFIED 未指定暫時保留的行為。
TEMPORARY_HOLD_SKIP 不要對目標物件設定暫時性保留。
TEMPORARY_HOLD_PRESERVE 保留物件的原始暫時性訴訟保留狀態。

TimeCreated

處理 Google Cloud Storage 物件 timeCreated 中繼資料的選項。

列舉
TIME_CREATED_UNSPECIFIED 未指定 TimeCreated 行為。
TIME_CREATED_SKIP 不要保留來源物件的 timeCreated 中繼資料。
TIME_CREATED_PRESERVE_AS_CUSTOM_TIME 在目標物件的 customTime 欄位中,保留來源物件的 timeCreatedlastModified 中繼資料。請注意,儲存在來源物件 customTime 欄位中的任何值都不會傳播至目的地物件。

UID

處理檔案 UID 屬性的選項。

列舉
UID_UNSPECIFIED 未指定 UID 行為。
UID_SKIP 在轉移作業期間,請勿保留 UID。
UID_NUMBER 在轉移工作期間保留 UID。

NotificationConfig

用於設定發布至 Pub/Sub 的通知。系統會使用下列 PubsubMessage.attributes 將通知發布至客戶提供的主題:

PubsubMessage.data 包含 TransferOperation 資源,其格式會根據指定的 PayloadFormat 格式化。

欄位
pubsub_topic

string

這是必要旗標,要發布通知的 Pub/Sub 主題的 Topic.name。格式必須為 projects/{project}/topics/{topic}。如果不符合這個格式,就會導致 INVALID_ARGUMENT 錯誤。

event_types[]

EventType

需要通知的事件類型。如果留空,則會針對所有事件類型傳送通知。

payload_format

PayloadFormat

這是必要旗標,通知訊息酬載的所需格式。

EventType

用於指定要發布通知的事件類型的列舉。

日後可能會新增更多事件類型。用戶端應要能夠安全忽略無法辨識的事件類型,或是明確指定準備接受哪些事件類型。

列舉
EVENT_TYPE_UNSPECIFIED 非法值,避免允許預設值。
TRANSFER_OPERATION_SUCCESS TransferOperation 已完成,狀態為 SUCCESS
TRANSFER_OPERATION_FAILED TransferOperation 已完成,狀態為 FAILED
TRANSFER_OPERATION_ABORTED TransferOperation 已完成,狀態為 ABORTED

PayloadFormat

用於指定通知訊息酬載格式的列舉項目。

列舉
PAYLOAD_FORMAT_UNSPECIFIED 非法值,避免允許預設值。
NONE 通知不會包含任何酬載。
JSON TransferOperation 會以 JSON 回應格式,在 application/json 中。

ObjectConditions

決定要轉移哪些物件的條件。僅適用於 S3、Azure 和 Cloud Storage 等 Cloud 資料來源。

「上次修改時間」是指物件內容或中繼資料上次變更的時間,具體來說,這會是 Cloud Storage 物件的 updated 屬性、S3 物件的 LastModified 欄位,以及 Azure Blob 的 Last-Modified 標頭。

對於 S3 物件,LastModified 值是物件開始上傳的時間。如果物件符合「上次修改時間」條件,但尚未完成上傳,系統就不會轉移該物件。如需更多資訊,請參閱「從 Amazon S3 轉移至 Cloud Storage」。

含有 PosixFilesystem 來源或目的地的轉移作業不支援 ObjectConditions

欄位
min_time_elapsed_since_last_modification

Duration

確保物件在「上次修改時間」後,至少要經過特定時間才會轉移。TransferOperation 開始時,只有在 TransferOperationstart_time 與物件的「上次修改時間」之間的經過時間等於或大於 min_time_elapsed_since_last_modification 的值時,才會傳送具有「上次修改時間」的物件。此外,沒有「上次修改時間」的物件也會傳送。

max_time_elapsed_since_last_modification

Duration

確保在「上次修改時間」過後,如果已過特定的最大時間,就不會傳輸物件。TransferOperation 開始時,只有在 TransferOperationstart_time 與物件的「上次修改時間」之間的時間間隔小於 max_time_elapsed_since_last_modification 的值時,系統才會傳送具有「上次修改時間」的物件。此外,系統也會傳送沒有「上次修改時間」的物件。

include_prefixes[]

string

如果您指定 include_prefixes,Storage 移轉服務會使用 include_prefixes 陣列中的項目,判斷要將哪些物件納入移轉作業。物件開頭必須是其中一個相符的 include_prefixes,才能納入轉移作業。如果指定 exclude_prefixes,物件開頭不得包含任何要納入轉移作業的 exclude_prefixes

include_prefixes 的相關規定如下:

  • 每個 include-prefix 可包含任意 Unicode 字元序列,如果名稱採 UTF8 編碼,則長度須為 1 到 1024 個位元組,且不得包含回車或換行字元。不支援萬用字元比對和規則運算式比對。

  • 每個 include-prefix 都必須省略開頭的斜線。舉例來說,如要納入 s3://my-aws-bucket/logs/y=2015/requests.gz 物件,請將納入前置字串指定為 logs/y=2015/requests.gz

  • 如果指定了 include-prefix 值,則這些值都不能為空白。

  • 每個 include-prefix 都必須包含物件命名空間的不同部分。任何 include-prefix 不得為其他 include-prefix 的前置字串。

include_prefixes 的大小上限為 1000。

詳情請參閱「篩選要移轉的物件」。

exclude_prefixes[]

string

如果您指定 exclude_prefixes,Storage 移轉服務會使用 exclude_prefixes 陣列中的項目,判斷要從移轉作業中排除哪些物件。物件開頭不得為其中一個相符的 exclude_prefixes,才能納入轉移作業。

exclude_prefixes 的相關規定如下:

  • 每個排除前置字串可包含任意順序的萬國碼字元,如果名稱採 UTF8 編碼,則長度須為 1 到 1024 個位元組,且不得包含回車或換行字元。不支援萬用字元比對和規則運算式比對。

  • 每個排除前置字串都必須省略開頭的斜線。舉例來說,如要排除物件 s3://my-aws-bucket/logs/y=2015/requests.gz,請將排除前置字串指定為 logs/y=2015/requests.gz

  • 如果指定了排除前置字串值,則所有排除前置字串值都不能為空白。

  • 每個排除前置字串都必須排除物件命名空間的不同部分。任何排除前置字串都不能是其他排除前置字串的前置字串。

  • 如果指定 include_prefixes,則每個排除前置字串的開頭都必須是 include_prefixes 明確納入的路徑值。

exclude_prefixes 的大小上限為 1000。

詳情請參閱「篩選要移轉的物件」。

last_modified_since

Timestamp

如果指定了時間戳記,系統只會轉移「上次修改時間」在該時間戳記或之後的物件,以及沒有「上次修改時間」的物件。

last_modified_sincelast_modified_before 欄位可搭配使用,用於處理分割的資料。舉例來說,假設有個指令碼一次處理一天的資料。您可以將每個欄位設為以下方式:

  • last_modified_since 到當天開始時間

  • last_modified_before 到當天結束

last_modified_before

Timestamp

如果指定了時間戳記,系統只會傳送時間戳記之前的「上次修改時間」物件,以及沒有「上次修改時間」的物件。

PauseTransferOperationRequest

傳遞至 PauseTransferOperation 的要求。

欄位
name

string

這是必要旗標,轉移作業的名稱。

授權需要指定資源 name 的下列 IAM 權限:

  • storagetransfer.operations.pause

PosixFilesystem

POSIX 檔案系統資源。

欄位
root_directory

string

檔案系統的根目錄路徑。

ReplicationSpec

指定跨值區複製作業的設定。跨值區複製功能會將新物件或更新後的物件,從來源 Cloud Storage 值區複製到目的地 Cloud Storage 值區。新的跨 bucket 複製工作不會複製來源值區中的現有物件。

欄位
object_conditions

ObjectConditions

決定要轉移哪些物件的物件條件。複寫工作僅支援 include_prefixesexclude_prefixes

transfer_options

TransferOptions

指定在複製期間要套用的中繼資料選項。不支援刪除選項。如果指定刪除選項,要求就會失敗,並顯示 INVALID_ARGUMENT 錯誤。

聯集欄位 data_source。要複製的資料來源。data_source 只能是下列其中一項:
gcs_data_source

GcsData

要複製物件的 Cloud Storage 值區。

聯集欄位 data_sink。複製物件的目的地。data_sink 只能是下列其中一項:
gcs_data_sink

GcsData

要複製物件的 Cloud Storage 值區。

ResumeTransferOperationRequest

傳送至 ResumeTransferOperation 的要求。

欄位
name

string

這是必要旗標,轉移作業的名稱。

授權需要指定資源 name 的下列 IAM 權限:

  • storagetransfer.operations.resume

RunTransferJobRequest

要求已傳送至 RunTransferJob。

欄位
job_name

string

這是必要旗標,轉移工作的名稱。

授權需要指定資源 jobName 的下列 IAM 權限:

  • storagetransfer.jobs.run
project_id

string

這是必要旗標,擁有移轉工作的 Google Cloud 專案 ID。

S3CompatibleMetadata

S3CompatibleMetadata 包含適用於 S3 相容資料供應器基本類型的中繼資料欄位。

欄位
auth_method

AuthMethod

指定儲存空間服務使用的驗證和授權方法。如未指定,轉移服務會嘗試判斷要使用的正確驗證方法。

request_model

RequestModel

指定用於呼叫儲存空間服務的 API 要求模型。如未指定,系統會使用 RequestModel REQUEST_MODEL_VIRTUAL_HOSTED_STYLE 的預設值。

protocol

NetworkProtocol

指定代理程式的網路通訊協定。如未指定,系統會使用 NetworkProtocol NETWORK_PROTOCOL_HTTPS 的預設值。

list_api

ListApi

用於探索物件的 Listing API。如未指定,轉移服務會嘗試判斷要使用的正確 API。

AuthMethod

儲存空間服務使用的驗證和授權方法。

列舉
AUTH_METHOD_UNSPECIFIED 未指定 AuthMethod。
AUTH_METHOD_AWS_SIGNATURE_V4 使用 AWS SigV4 驗證要求。
AUTH_METHOD_AWS_SIGNATURE_V2 使用 AWS SigV2 驗證要求。

ListApi

用於探索物件的 Listing API。

列舉
LIST_API_UNSPECIFIED 未指定 ListApi。
LIST_OBJECTS_V2 使用 ListObjectsV2 API 執行清單。
LIST_OBJECTS 舊版 ListObjects API。

NetworkProtocol

用於存取儲存空間服務的代理網路通訊協定。

列舉
NETWORK_PROTOCOL_UNSPECIFIED 未指定 NetworkProtocol。
NETWORK_PROTOCOL_HTTPS 使用 HTTPS 執行要求。
NETWORK_PROTOCOL_HTTP 不建議使用:此方法會以明文傳送資料。這類資料僅適用於封閉網路或公開資料。使用 HTTP 執行要求。

RequestModel

API 的要求模型。

列舉
REQUEST_MODEL_UNSPECIFIED 未指定 RequestModel。
REQUEST_MODEL_VIRTUAL_HOSTED_STYLE 使用虛擬託管樣式執行要求。示例:https://bucket-name.s3.region.amazonaws.com/key-name
REQUEST_MODEL_PATH_STYLE 使用路徑樣式執行要求。示例:https://s3.region.amazonaws.com/bucket-name/key-name

排程

您可以安排移轉作業週期性執行,也可以安排一次性執行。

欄位
schedule_start_date

Date

這是必要旗標,轉移作業的開始日期。日期邊界會根據世界標準時間判定。如果 schedule_start_datestart_time_of_day 相對於工作建立時間而言已過時,轉移作業會在排定轉移要求的隔天開始。

注意:如果在世界標準時間午夜或午夜附近啟動工作,工作可能會比預期晚啟動。舉例來說,如果您在 6 月 1 日世界標準時間午夜前 1 毫秒傳送外寄要求,且 Storage 移轉服務伺服器在 6 月 2 日收到要求,則會建立 TransferJob,並將 schedule_start_date 設為 6 月 2 日,start_time_of_day 設為世界標準時間午夜。第一個預定的 TransferOperation 將在 6 月 3 日世界標準時間午夜發生。

schedule_end_date

Date

上次執行轉移作業的日期。日期邊界會根據世界標準時間判定。工作會依照下列規範,每 24 小時執行一次:

  • 如果 schedule_end_dateschedule_start_date 相同,且相對於 UTC 的時區在未來,轉移作業只會執行一次。
  • 如果 schedule_end_date 晚於 schedule_start_date,且 schedule_end_date 相對於世界標準時間來說是未來的時間,則工作會在每天 start_time_of_dayschedule_end_date 之間執行。
start_time_of_day

TimeOfDay

系統排定移轉工作執行時間,以世界標準時間為準。轉移作業可能會在這個時間過後才開始。

如未指定 start_time_of_day

  • 單次轉帳會立即執行。
  • 透過 schedule_end_date 執行的週期性轉移作業會立即執行,並且每天在世界標準時間午夜執行。

如果指定 start_time_of_day

  • 一次性轉帳會在指定時間執行。
  • 週期性轉移作業會在每天指定的時間透過 schedule_end_date 執行。
end_time_of_day

TimeOfDay

系統不會再安排其他移轉作業的時間 (以世界標準時間為準)。end_time_of_dayschedule_end_date 搭配使用時,可指定開始新的轉移作業的結束日期和時間。這個欄位必須大於或等於 schedule_start_datestart_time_of_day 組合對應的時間戳記,並遵守下列規定:

  • 如果未設定 end_time_of_day,但已設定 schedule_end_date,則 end_time_of_day 會使用預設值 23:59:59

  • 如果已設定 end_time_of_day,但未設定 schedule_end_date,則會傳回 INVALID_ARGUMENT

repeat_interval

Duration

每個排定 TransferOperation 開始執行之間的間隔。如未指定,預設值為 24 小時。這個值不得小於 1 小時。

TransferCounters

一組用於回報轉移作業進度的計數器。

欄位
objects_found_from_source

int64

在資料來源中找到的物件,已排定要轉移,但不包括根據物件條件篩除的物件,或因同步處理而略過的物件。

bytes_found_from_source

int64

在資料來源中找到的位元組,已排定要傳輸,但不包括根據物件條件篩除的位元組,或因同步作業而略過的位元組。

objects_found_only_from_sink

int64

僅在已排定刪除作業的資料接收器中找到的物件。

bytes_found_only_from_sink

int64

只有在已排定要刪除的資料接收器中找到的位元組。

objects_from_source_skipped_by_sync

int64

資料來源中的物件,由於已存在於資料接收端,因此不會轉移。

bytes_from_source_skipped_by_sync

int64

資料來源中的位元組已存在於資料接收端,因此不會轉移。

objects_copied_to_sink

int64

複製到資料接收器的物件。

bytes_copied_to_sink

int64

複製到資料接收器的位元組。

objects_deleted_from_source

int64

從資料來源中刪除的物件。

bytes_deleted_from_source

int64

從資料來源刪除的位元組。

objects_deleted_from_sink

int64

從資料接收器中刪除的物件。

bytes_deleted_from_sink

int64

從資料接收器刪除的位元組。

objects_from_source_failed

int64

資料來源中無法轉移或轉移後無法刪除的物件。

bytes_from_source_failed

int64

資料來源中無法轉移或轉移後無法刪除的位元組。

objects_failed_to_delete_from_sink

int64

無法從資料接收器刪除的物件。

bytes_failed_to_delete_from_sink

int64

無法從資料接收器刪除的位元組。

directories_found_from_source

int64

僅限涉及 PosixFilesystem 的轉移作業。

列出時找到的目錄數量。舉例來說,如果轉移作業的根目錄為 base/,且該目錄下有兩個其他目錄 a/b/,則列出 base/base/a/base/b/ 後的計數為 3。

directories_failed_to_list_from_source

int64

僅限涉及 PosixFilesystem 的轉移作業。

來源中每個目錄的清單失敗次數。列出目錄時可能會發生的失敗情形包括權限失敗或封鎖失敗。如果目錄列舉作業失敗,系統就不會轉移目錄中的任何檔案。

directories_successfully_listed_from_source

int64

僅限涉及 PosixFilesystem 的轉移作業。

來源中每個目錄的成功刊登項目數量。

intermediate_objects_cleaned_up

int64

成功清除的中繼物件數量。

intermediate_objects_failed_cleaned_up

int64

未能清除的中繼物件數量。

TransferJob

這個資源代表定期執行的轉移工作設定。

欄位
name

string

建立工作時指派的專屬名稱 (在移轉專案中)。如果 CreateTransferJobRequest 中的這個欄位為空白,Storage Transfer Service 會指派專屬名稱。否則,系統會使用指定的名稱做為這項工作的專屬名稱。

如果指定名稱已在工作中使用,建立要求就會失敗,並傳回 ALREADY_EXISTS 錯誤。

這個名稱開頭必須是 "transferJobs/" 前置字串,結尾則須為英文字母或數字,長度不得超過 128 個字元。如果是涉及 PosixFilesystem 的轉移作業,這個名稱必須以 transferJobs/OPI 開頭。對於所有其他轉移類型,此名稱不得以 transferJobs/OPI 開頭。

非 POSIX 檔案系統範例:"transferJobs/^(?!OPI)[A-Za-z0-9-._~]*[A-Za-z0-9]$"

PosixFilesystem 範例:"transferJobs/OPI^[A-Za-z0-9-._~]*[A-Za-z0-9]$"

應用程式不得依賴涉及 OPI 的命名規定。

無效的工作名稱會失敗,並顯示 INVALID_ARGUMENT 錯誤。

description

string

使用者為工作提供的說明。以 Unicode 編碼時,長度上限為 1024 個位元組。

project_id

string

擁有工作項目的 Google Cloud 專案 ID。

transfer_spec

TransferSpec

轉移規格。

replication_spec

ReplicationSpec

複製作業規格。

notification_config

NotificationConfig

通知設定。

logging_config

LoggingConfig

記錄設定。

schedule

Schedule

指定轉移工作的排程。這是選填欄位。如果未設定這個欄位,除非您叫用 RunTransferJob,或更新工作以便擁有非空的排程,否則工作一律不會執行轉移作業。

event_stream

EventStream

指定事件導向移轉作業的事件串流。指定 EventStream 時,系統會忽略 Schedule 欄位。

status

Status

工作狀態。此值必須為 CreateTransferJobRequests

注意:新工作狀態的效果會在後續工作執行期間生效。舉例來說,如果您將工作狀態從 ENABLED 變更為 DISABLED,且轉移作業產生的作業正在執行,則狀態變更不會影響目前的作業。

creation_time

Timestamp

僅供輸出。建立轉移工作的時間。

last_modification_time

Timestamp

僅供輸出。上次修改轉移作業的時間。

deletion_time

Timestamp

僅供輸出。刪除轉移工作的時間。

latest_operation_name

string

這個 JobConfig 中最近啟動的 TransferOperation 名稱。如果已為此 JobConfig 建立 TransferOperation,則會顯示此屬性。

狀態

移轉工作狀態。

列舉
STATUS_UNSPECIFIED 0 為無效值。
ENABLED 系統會依據排程執行新轉移作業。
DISABLED 不會排定新的轉移作業。
DELETED 這是虛刪除狀態。轉移工作設為此狀態後,工作和所有轉移執行作業都會進行垃圾收集。轉移工作狀態設為 DELETED 後,30 天後即可進行垃圾收集。

TransferManifest

指定資訊清單所在位置。

欄位
location

string

指定 Cloud Storage 中資訊清單的路徑。用於移轉的 Google 管理服務帳戶必須具備此物件的 storage.objects.get 權限。路徑範例為 gs://bucket_name/path/manifest.csv

TransferOperation

轉移作業的執行說明。

欄位
name

string

系統指派的全域專屬 ID。

project_id

string

擁有作業的 Google Cloud 專案 ID。

transfer_spec

TransferSpec

轉移規格。

notification_config

NotificationConfig

通知設定。

logging_config

LoggingConfig

Cloud Logging 設定。

start_time

Timestamp

這項轉移作業的開始時間。

end_time

Timestamp

這項轉移作業的結束時間。

status

Status

移轉作業的狀態。

counters

TransferCounters

轉移作業的進度資訊。

error_breakdowns[]

ErrorSummary

摘要說明錯誤記錄檔項目的錯誤。

transfer_job_name

string

觸發這項轉移作業的轉移工作名稱。

狀態

TransferOperation 的狀態。

列舉
STATUS_UNSPECIFIED 0 為無效值。
IN_PROGRESS 執行中。
PAUSED 已暫停。
SUCCESS 已順利完成。
FAILED 由於無法復原的失敗,因此終止。
ABORTED 已由使用者中止。
QUEUED 系統暫時延遲處理。使用者不必採取任何行動。
SUSPENDING 作業會暫停並排空持續進行的工作,直到完成為止。

TransferOptions

TransferOptions 會定義要在轉移作業中對物件執行的動作。

欄位
overwrite_objects_already_existing_in_sink

bool

覆寫已存在於接收器中的物件時機。根據預設,系統只會覆寫與來源不同的物件。如果為 true,則會將接收器中名稱與來源中物件相符的所有物件,以來源物件覆寫。

delete_objects_unique_in_sink

bool

是否應刪除只存在於接收器中的物件。

注意:這個選項和 delete_objects_from_source_after_transfer 互斥。

delete_objects_from_source_after_transfer

bool

是否應在物件轉移至接收端後,從來源刪除這些物件。

注意:這個選項和 delete_objects_unique_in_sink 互斥。

overwrite_when

OverwriteWhen

覆寫已存在於接收器中的物件時機。如果未設定,系統會根據 overwrite_objects_already_existing_in_sink 決定覆寫行為。

metadata_options

MetadataOptions

代表轉移工作的所選中繼資料選項。

OverwriteWhen

指定在來源中找到名稱相符的物件時,應在接收器中覆寫物件的時間。

列舉
OVERWRITE_WHEN_UNSPECIFIED 未指定覆寫行為。
DIFFERENT 只有在物件名稱相同但 HTTP ETag 或總和檢查碼值不同時,才會使用來源物件覆寫目的地物件。
NEVER 如果來源物件與目的地物件名稱相同,一律不會覆寫目的地物件。在這種情況下,系統不會轉移來源物件。
ALWAYS 一律以來源物件覆寫目的地物件,即使 HTTP ETag 或總和檢查碼值相同亦然。

TransferSpec

執行轉移作業的設定。

欄位
object_conditions

ObjectConditions

只有符合這些物件條件的物件會納入資料來源和資料目的地物件集合。以物件「上次修改時間」為依據的物件條件不會排除資料接收器中的物件。

transfer_options

TransferOptions

如果選項 delete_objects_unique_in_sinktrue,且指定了「上次修改時間」等時間相關物件條件,要求就會失敗,並顯示 INVALID_ARGUMENT 錯誤。

transfer_manifest

TransferManifest

資訊清單檔案會提供從資料來源轉移的物件清單。這個欄位會指向資訊清單檔案的位置。否則,系統會使用整個來源資料集。但仍須遵守 ObjectConditions。

source_agent_pool_name

string

指定與 POSIX 資料來源相關聯的代理程式集區名稱。如未指定,系統會使用預設名稱。

sink_agent_pool_name

string

指定與 POSIX 資料匯流程相關聯的代理程式集區名稱。如未指定,系統會使用預設名稱。

聯集欄位 data_sink。資料的寫入接收器。data_sink 只能是下列其中一項:
gcs_data_sink

GcsData

Cloud Storage 資料接收區。

posix_data_sink

PosixFilesystem

POSIX 檔案系統資料接收端。

聯集欄位 data_source。資料的讀取來源。data_source 只能是下列其中一項:
gcs_data_source

GcsData

Cloud Storage 資料來源。

aws_s3_data_source

AwsS3Data

AWS S3 資料來源。

http_data_source

HttpData

HTTP 網址資料來源。

posix_data_source

PosixFilesystem

POSIX 檔案系統資料來源。

azure_blob_storage_data_source

AzureBlobStorageData

Azure Blob 儲存體資料來源。

aws_s3_compatible_data_source

AwsS3CompatibleData

與 AWS S3 相容的資料來源。

hdfs_data_source

HdfsData

HDFS 叢集資料來源。

聯集欄位 intermediate_data_location

intermediate_data_location 只能是下列其中一項:

gcs_intermediate_data_location

GcsData

針對檔案系統之間的傳輸作業,指定 Cloud Storage 值區做為用來傳輸資料的中介位置。

詳情請參閱「在檔案系統之間轉移資料」。

UpdateAgentPoolRequest

指定傳遞至 UpdateAgentPool 的要求。

欄位
agent_pool

AgentPool

這是必要旗標,要更新的代理程式集區。agent_pool 應指定下列欄位:

授權需要指定資源 agentPool 的下列 IAM 權限:

  • storagetransfer.agentpools.update
update_mask

FieldMask

在本要求中要更新的 agentPool 欄位的欄位遮罩。您可以更新下列 agentPool 欄位:

UpdateTransferJobRequest

傳送至 UpdateTransferJob 的要求。

欄位
job_name

string

這是必要旗標,要更新的工作名稱。

授權需要指定資源 jobName 的下列 IAM 權限:

  • storagetransfer.jobs.update
project_id

string

這是必要旗標,擁有工作項目的 Google Cloud 專案 ID。

transfer_job

TransferJob

這是必要旗標,要更新的工作。transferJob 應指定一或多個欄位:descriptiontransfer_specnotification_configlogging_configstatus。指定其他欄位的 UpdateTransferJobRequest 會遭到拒絕,並顯示錯誤 INVALID_ARGUMENT。您必須具備 storagetransfer.jobs.delete 權限,才能將工作狀態更新為 DELETED

update_transfer_job_field_mask

FieldMask

在本要求中要更新的 transferJob 欄位的欄位遮罩。transferJob 中可更新的欄位包括:descriptiontransfer_specnotification_configlogging_configstatus。如要更新工作 transfer_spec,您必須提供完整的轉移規格。如果規格不完整,缺少任何必填欄位,系統會拒絕,並傳回 INVALID_ARGUMENT 錯誤。