ユーザーに代わってデータにアクセスする

アプリケーションがユーザーに代わってデータにアクセスする必要がある場合、これは 3-legged OAuth フローと呼ばれます。3-legged OAuth フローでは、アプリケーションが、アカウントにログインして認証を行うエンドユーザーから認証情報を取得します。アプリケーションは取得したエンドユーザーの認証情報を使用して、ユーザーに代わって Cloud Storage リソースにアクセスします。このアプローチを使用できるシナリオの例を次に示します。

  • ウェブサーバー アプリケーション
  • インストールされたアプリケーションとデスクトップアプリケーション
  • モバイルアプリ
  • クライアント側の JavaScript
  • 入力が限られたデバイス上のアプリケーション
これらのシナリオの詳細については、OAuth 2.0 のシナリオをご覧ください。

他のシナリオでは、サービス アカウントの認証情報を使用することをおすすめします。

エンドユーザー向けに複数の認証オプションをサポートするアプリケーションを設計している場合は、Firebase Authentication を使用します。この認証では、メールとパスワードによる認証に加えて、Google、Facebook、Twitter、GitHub などの ID プロバイダを使用した連携ログインがサポートされます。別のユースケースで認証システムを設定する方法については、Firebase Authentication の開始方法をご覧ください。

アプリケーションに、エンドユーザーから本人に代わってデータにアクセスするためのアクセス トークンが付与される場合、そのアクセス トークンにはトークンを付与したユーザーが使用できる権限のみが割り当てられます。たとえば、jane@example.com に example-bucket に対する read-only アクセスが許可されている場合、Jane から read-write アクセス権が付与されたアプリケーションは、彼女に代わって example-bucket に書き込みを行うことはできません。

次のステップ