2011-11-09 28 views
7

Google Cloud Storageは、ユーザーがアップロードしたファイルの永続ストアとして使用したいと考えています。申し訳ありませんが、私たちのチームはGoogle Apps forドメインをベースにしているため、「チーム」にはアプリケーションID(アプリケーションID @ appspot.gserviceaccount.com)を追加できません。私たちのドメインでチームに参加することができます。App EngineのGoogle Cloud Storage認証

この場合、App Engineインスタンスを認証するための推奨方法はありますか?

+0

好奇心から離れて、App Engine + Blobstore経由でアクセスできないCloud Storageをどのような機能で利用していますか? – kamens

+1

ユーザーがダウンロードできるようにデータを公開したいのですが、Cloud StorageはApp Engineを通じて提供するよりもはるかに高速で安価です。基本的には、CDNを使い易いCDNとして使用しています。 – tghw

+0

Gotcha。私たちはブロブストアレスでキャッシュヘッダーを送り返して(パフォーマンスの賢明な)いくつかの幸運を得ました(Googleのフロントエンドサーバーは、その後、ほとんどのリクエストを迅速に処理するようです)。無効化しやすい部分は別の話です。 – kamens

答えて

3

Gmailアカウントを使用して新しいチームを作成します。すべてのチームメンバー(アプリケーションを含む)を追加し、チームからGmailアカウントを削除します。

はい、恐ろしいハックです。申し訳ありません。

4

GSUtilを使用して、作成したバケットへの書き込みアクセスを明示的に許可して、サービスアカウント "[email protected]"がバケットに十分アクセスできるようにすることもできます。デフォルトでは、あなたのバケツには他人がアクセスすることはできません。あなたはバケツにあなたのACLを変更するためにgsutilをして行う必要がありますどのような

はこれです:変更を行い

  • てacl.txt // mybucket>:gsutilのGETACL GS:

    • は、バケットのACLを取得します。ユーザー "[email protected]"の追加グラントを追加してバケットの書き込みアクセス権を付与するなどのacl.txtへのアクセスを参照してください(ACL docを参照)。これを行う方法について:バケツに

      <Entry> 
          <Scope type="UserByEmail"> 
          <EmailAddress>[email protected]</EmailAddress> 
          <Name>Service Account</Name> 
          </Scope> 
          <Permission>FULL_CONTROL</Permission> 
      </Entry> 
      
    • 更新ACL:http://code.google.com/apis/storage/docs/accesscontrol.html#applyacls を具体的に、それはあなたがダウンロードしてacl.txtに追加するには、このようになりますgsutilのSETACLてacl.txt GS:// yourbucket

    これが役立ちます。

  • +0

    実際に試しましたか?具体的には、バケットではなくプロジェクトにバウンスが含まれていないGoogle APIコンソールプロジェクトにサービスアカウントを追加します。 – Yasser

    +0

    これは(gsutilを使用して)私たちのために働いたことを確認できます – tosh

    +0

    これは私のために働いた。 App Engineコンソールから「アプリケーション設定」のサービスアカウント名を取得しました。 –

    -1

    Google Cloud Storageを使用する場合は、このリンクhttps://developers.google.com/storage/を経由して新しいアカウントを作成してから使用できます。

    +0

    これはここで尋ねられたことではありません –

    関連する問題