• 文字サイズ変更
  • S
  • M
  • L
  • No : 767
  • 公開日時 : 2024/08/29 12:36
  • 更新日時 : 2024/10/09 16:58
  • 印刷

APIを利用してストレージへアクセスする方法を教えてください

回答

APIを利用してクラウドストレージへアクセスする方法には大きく以下の2つがあります。
 
1. gsutilコマンドを実行する(最も推奨される方法)
OSにgcloud SDKをインストールしてコマンド経由でAPIを実行する方法です。
詳細は当ページ内の『1.gsutilコマンドを実行する』 を参照してください。

2. APIを直接利用する
2.1 Google が提供しているクライアントライブラリを使用する(推奨)
これからアプリケーションを構築する場合に使用します。
詳細は 当ページ内の「2.1 Google が提供しているクライアントライブラリを使用する」を参照してください。
 
2.2 JSON APIを直接使用する
クライアントライブラリに使用する言語のライブラリが存在しない場合に使用します。
詳細は当ページ内の「2.2 JSON APIを直接実行する」を参照してください。
 
2.3 XML APIを使用する(非推奨)
現在、Amazon s3 APIを使用したアプリケーションを構築している場合や、他の Amazon s3 互換サービスへ接続する場合に使用します。
詳細は当ページ内の「2.3 XML APIを使用する」を参照してください。
ただし、マルチパートアップロードを利用することは出来ません。
デフォルト設定では8MByte以上のファイルのアップロードに影響します。
 

 
1. gsutilコマンドを実行する(最も推奨される方法)
gsutil コマンドを実行することで JSON API の実行が可能です。

■インストール方法
以下のFAQの 1~3 を参照してインストールしてください。
 ▼gsutil(Google Cloud SDK)のインストール方法を教えてください。
 https://faq.idcf.jp/faq/show/770?site_domain=default

■認証方法
  • IDCFクラウドコンソールで連携した Google アカウントを利用する場合
    以下のFAQの 4 を参照してインストールしてください。
    ▼gsutil(Google Cloud SDK)のインストール方法を教えてください。
     https://faq.idcf.jp/faq/show/770?site_domain=default
 
  • サービスアカウントを利用する場合(推奨)
    以下のFAQを参照してサービスアカウントの作成と認証を行ってください。
    ▼サービスアカウントの使用方法について教えてください。
     https://faq.idcf.jp/faq/show/735?site_domain=default

■使用例
以下のFAQを参照して実際に実行したい gsutil のコマンドを実行してください。
 ▼サービスアカウントの使用方法について教えてください。
 https://faq.idcf.jp/faq/show/735?site_domain=default
 

 
2.1 Google が提供しているクライアントライブラリを使用する(推奨)
クライアントライブラリを使用することでクラウドストレージへ JSON API の実行が可能です。

■インストール方法
各言語ごとのインストール方法が用意されています。下記を参照ください。
https://cloud.google.com/storage/docs/reference/libraries#installing_the_client_library
※弊社管理外サイトです

■認証方法
以下のa、b いずれかの方法で認証を実施します。

a.サービスアカウントを使用する
以下のFAQの手順1.~3.を実施してIDCFクラウドコンソールからサービスアカウントを作成します。
▼サービスアカウントの使用方法について教えてください。
 https://faq.idcf.jp/faq/show/735?site_domain=default

ダウンロードしたキーをアプリケーションに実行環境に移し、以下のコマンドを実行します。

$ export GOOGLE_APPLICATION_CREDENTIALS=“キーのパスを指定”


b.連携したGoogleアカウントを使用する
アプリケーションを実行する環境で以下のFAQの手順を実施し、対象プロジェクトを設定します。
▼gsutil(Google Cloud SDK)のインストール方法を教えてください。
 https://faq.idcf.jp/faq/show/770?site_domain=default

以下のコマンドを実行し、OAuth 2.0 で認証し、アプリケーションが使用するtokenを生成します。
(gcloud initを実行したときも同様の OAuth 2.0 認証を実施しますが別途、必要です。)

$ gcloud auth application-default login
 
■使用例
上記の a. または b. の方法で認証を実施後、各言語ごとのクライアントライブラリを使用します。各言語ごとのサンプルコードは以下を参照してください。
https://cloud.google.com/storage/docs/reference/libraries#using_the_client_library
 

 
2.2 JSON APIを直接実行する
次のページで定義されているAPI仕様に基づいて直接APIを実行します。
▼API reference(※弊社管理外サイトです)
https://cloud.google.com/storage/docs/json_api/v1/
 
APIについての概要は次のページを参照してください。
▼Google Cloud Storage JSON API の概要(※弊社管理外サイトです)
https://cloud.google.com/storage/docs/json_api?hl=ja
 
■認証方法
以下のa、bいずれかの方法で認証を実施します。
 

a.サービスアカウントを使用する
以下のFAQの手順1.〜3.を実施してIDCFクラウドコンソールからサービスアカウントを作成します。
▼サービスアカウントの使用方法について教えてください。
 https://faq.idcf.jp/faq/show/735?site_domain=default

ダウンロードしたキーをアプリケーションの実行環境に移し、以下のコマンドを実行します。

$ export GOOGLE_APPLICATION_CREDENTIALS=“キーのパスを指定”
 

b.連携したGoogleアカウントを使用する
アプリケーションを実行する環境で以下のFAQの手順を実施し、対象プロジェクトを設定します。
▼gsutil(Google Cloud SDK)のインストール方法を教えてください。
 https://faq.idcf.jp/faq/show/770?site_domain=default

以下のコマンドを実行し、OAuth 2.0 で認証し、アプリケーションが使用するtokenを生成します。
(gcloud initを実行したときも同様の OAuth 2.0 認証を実施しますが別途、必要です。)

 $ gcloud auth application-default login

認証についての詳細は下記リファレンスをご参照ください。
▼OAuth 2.0 認証について
https://developers.google.com/identity/protocols/OAuth2
▼GOOGLE_APPLICATION_CREDENTIALSについて
https://cloud.google.com/docs/authentication/getting-started?hl=ja
 
■使用方法
トークンの取得を取得し、Authorizationヘッダーにアクセストークンを指定します。
認証やトークンの取り扱いに関してはアプリケーションの言語に合わせた専用の OAuth2.0に対応したライブラリを使用して下さい。
アクセストークンについての詳細は以下を参照下さい。
https://developers.google.com/identity/protocols/OAuth2
 
■curlでの実行例
トークンの取得
$ gcloud auth application-default print-access-token
$ curl --request GET \
 'https://www.googleapis.com/storage/v1/b/[バケット名]/o/[オブジェクト名]' \
 --header 'Authorization: Bearer [上で取得したトークン]' \
 --header 'Accept: application/json'

 
2.3  XML APIを使用する(非推奨)
現在、Amazon s3 APIを使用したアプリケーションを構築している場合や、他の Amazon s3 互換サービスへ接続する場合はこちらをご使用ください。
ただし、マルチパートアップロードを利用することは出来ません。

XML APIについての概要は次のページを参照してください。
▼XML API の概要
https://cloud.google.com/storage/docs/xml-api/overview?hl=ja
 
■認証方法
既に構築済みのアプリケーションがあり、アクセスキー・シークレットキーを指定する場合など Amazon s3 互換ライブラリからXML APIを使用するには、アクセスキーとシークレットキーの取得が必要です。
以下のFAQの手順で、相互運用ストレージアクセスキーを取得します。
 ▼アクセスキー、シークレットキーの発行方法を教えてください。
 https://faq.idcf.jp/faq/show/732?site_domain=default
 
■使用方法
リクエストエンドポイントは以下となります。
・[BUCKET_NAME].storage.googleapis.com/[OBJECT_NAME] または、
・storage.googleapis.com/[BUCKET_NAME]/[OBJECT_NAME] を使用します。
 
取得したアクセスキーとシグネチャを Authorizationヘッダーへ指定します。シグネチャ生成時に取得したシークレットキーを使用します。詳細は以下を参照下さい。
https://cloud.google.com/storage/docs/migrating#authentication
 
その他のヘッダーやクエリ文字列パラメータは以下を参照下さい。
https://cloud.google.com/storage/docs/xml-api/overview#headers_and_query_string_parameters
 

アンケート:ご意見をお聞かせください

ご意見・ご感想をお寄せください お問い合わせを入力されましてもご返信はいたしかねます