我如何通过命令行使用 hmac 密钥对存储桶进行身份验证

How can i authenticate to the bucket using hmac keys via command line

需要从使用 minio 客户端转变为具有 gcloud/gsutil 和 mysql 个图像的 docker 个图像。

我目前拥有的:

  1. /tmp/mc 别名集 gcs1 https://storage.googleapis.com $ACCESS_KEY $SECRET_KEY
  2. mysqldump --skip-lock-tables --triggers --routines --events --set-gtid-purged=OFF --single-transaction --host=$PXC_SERVICE -u root --all-databases | /tmp/mc 管道 gcs1/mysql-test-dr/mdmpdb10.sql

我需要更改为: 3. <类似于第 1 行的内容(授权)> 4. mysqldump --skip-lock-tables --triggers --routines --events --set-gtid-purged=OFF --single-transaction --host=$PXC_SERVICE -u root --all-databases --skip-add-locks > $FILE_NAME && gsutil cp $FILE_NAME gs://$BUCKET_NAME/$FILE_NAME

gcloud/gsutil 中是否有替代第 1 行的内容? 我能够找到 gcloud auth activate-service-account [ACCOUNT] --key-file=[KEY_FILE] 但这将是服务帐户密钥。我需要使用 hmac 密钥对存储桶进行身份验证。

您需要使用 gsutil config -a 生成一个 boto 配置文件。如果您还配置了 gcloud auth 凭据,您可能必须告诉 gcloud 不要将这些(非 HMAC)凭据传递给 gsutil,因为 gsutil 可能不允许您同时激活多个凭据类型。您可以通过 运行 这个 gcloud 命令执行此操作:

gcloud config set pass_credentials_to_gsutil false

gsutil config 文档页面中提到了所有内容:
https://cloud.google.com/storage/docs/gsutil/commands/config