Google Cloud Storageを利用したファイル共有

こんにちは。GMOインサイトのT.Oです。

クラウドストレージに保存したファイルを、特定の取引先や顧客と一時的に共有したいというニーズは多いのではないでしょうか。Google Cloud Storage(GCS)の署名付きURL(Signed URL)機能を使うと、一時的なアクセス権を持つURLを発行でき、安全にファイル共有を行うことができます。
この記事では、署名付きURLの特徴と、Pythonを使った実装方法をご紹介します。

主な特徴

・有効期限を設定可能(数分から最大7日間)
・URLを知っている方のみがアクセス可能
・特別な認証情報なしでアクセス可能

実装方法

0.前提

Google Cloudの管理コンソールでCloud Shellを利用してコマンドラインで以下の手順を実行します。

1.事前準備

まず必要なツールとライブラリをインストールします。

2.サービスアカウントの設定

署名付きURLを生成するためのサービスアカウントを作成し、サービスアカウントキーをダウンロードします。
*1) サービスアカウント名は任意です。以下の例では”signed-url-generator”としています
*2) サービスアカウントキーは安全に保管してください

 

3.署名付きURL生成スクリプトの作成

署名付きURLを生成するためのスクリプトを作成します。今回はPythonで実装します。
ファイル名は”generate_signed_url.py”とします。

 

4.署名付きURLの生成スクリプトを実行する

 

実行すると以下の実行例のように署名付きURLが表示されます。このURLをダウンロードの対象者にお伝えします。

5.署名付きURLの利用

以下のように利用手順や注意事項をダウンロードの対象者に連絡します。

まとめ

署名付きURLは、Google Cloud Storageのファイルを外部のユーザーと安全に共有するための優れた機能です。適切な有効期限を設定することで、セキュリティを保ちながら柔軟なファイル共有が可能になります。

今回紹介したコードやコマンドをご利用いただく場合、実際の環境に合わせて適切に修正してください。
また、より詳細な情報についてはGoogle Cloud の公式ドキュメントをご参照ください。