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

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

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

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

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

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

次のステップ