LoginSignup
5
2

More than 1 year has passed since last update.

GCP(Google Cloud Platform)のStorageをS3モードでWinScpでつないで操作する

Last updated at Posted at 2021-06-28

はじめに

Google Cloud Storage(以下GCS)はブラウザから簡単に操作ができましたが、GUIソフトで操作した方が慣れてますよね。
実はGCSはS3互換モードが存在して、それを使えば簡単にアクセスできるのですが、あまり知られてないかも、ということで紹介します。

23/4/8 追記
こちらの記事がより詳細です
https://zenn.dev/google_cloud_jp/articles/winscp-for-google-cloud-storage

クラウド側でS3アクセスを有効化

まず、GCP側でS3用のアクセスキーを作成します。

アクセスキーは2通りの方法で払い出すことができます。
方法1: IAMからStorageアクセス専用のユーザを作成し、紐づける(<=おすすめ)
方法2:デフォルトプロジェクトにしてキーを払い出す

どちらの方右方でも、まずGCPの管理画面のCloud Storageページを開いてください。
「設定」-> 「相互運用性」を開きます。

cloud_setting_1.jpg

方法1: IAMからStorageアクセス専用のユーザを作成の場合

AWSなどでもおなじみの専用ユーザを作成する方法です。

image.png

「サービスアカウントHMAC」の「サービスアカウント用にキーを作成」=>「新しいアカウントを作成」をクリック

適当にサーバアカウント名を付けます。
図では、"s3-full-access"です。
image.png

権限は、「ストレージ管理者」を割り振ります。

image.png

ユーザを作成し、「アクセスキー」「シークレット」を忘れずに、メモしましょう。
image.png

これで、作成は完了です。

方法2:デフォルトプロジェクトにしてキーを払い出す

そのまま下にスクロールして、
「相互運用のデフォルトプロジェクト」で、デフォルトプロジェクトに設定します。

「ユーザーアカウントのアクセスキー」の「鍵を作成」ボタンを押すと、 アクセスキーシークレットキー を発行できました。
このページでいつでもキーを確認することができます。

(アクセスキーの発行は、これ以外に同じページにある「サービスアカウントのアクセスキー」でも発行できます。
こちらを使えば、権限をコントロールできます。)

cloud_setting_2.jpg

迷うところはなかったかなと思います。

WinScpでアクセスする

WinScpの「ホスト名」にリクエストエンドポイント、つまり
https://storage.googleapis.com
のURLを入れます。

最新のWinScpでは、転送プロトコルが自動でS3になります。
上で発行した、 アクセスキーシークレットキーを入れてログインするとバケットの一覧が表示されます。

おまけ:Cyberduckでアクセスする

新規接続で、

これで、接続できます。

image.png

ファイルアップロードエラー(Cannot insert legacy ACL)が出たら

Status code: 400, reason phrase: Invalid argument. Cannot insert legacy ACL for an object when uniform bucket-level access is enabled. Read more at...

CyberduckがACLの変更をしようとして拒否されている。
変更を行わない設定にすることで、対応可能。

メニューの編集 -> 環境設定
S3 の Default ACL を "なし" にする。
image.png

終わりに

S3互換モードはいろいろなツールの連携に役立ちそうです。
また、簡単にキーの発行と削除ができるので、デザイナさんなどシステムに関わない人にストレージを見てもらうときにも便利ですね。

以上です。

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2