アプリケーションがユーザーに代わってデータにアクセスする必要がある場合、これは 3-legged OAuth フローと呼ばれます。3-legged OAuth フローでは、アプリケーションが、アカウントにログインして認証を行うエンドユーザーから認証情報を取得します。アプリケーションは取得したエンドユーザーの認証情報を使用して、ユーザーに代わって Cloud Storage リソースにアクセスします。このアプローチを使用できるシナリオの例を次に示します。
- ウェブサーバー アプリケーション
- インストールされたアプリケーションとデスクトップアプリケーション
- モバイルアプリ
- クライアント側の JavaScript
- 入力が限られたデバイス上のアプリケーション
他のシナリオでは、サービス アカウントの認証情報を使用することをおすすめします。
エンドユーザー向けに複数の認証オプションをサポートするアプリケーションを設計している場合は、Firebase Authentication を使用します。この認証では、メールとパスワードによる認証に加えて、Google、Facebook、Twitter、GitHub などの ID プロバイダを使用した連携ログインがサポートされます。別のユースケースで認証システムを設定する方法については、Firebase Authentication の開始方法をご覧ください。
アプリケーションに、エンドユーザーから本人に代わってデータにアクセスするためのアクセス トークンが付与される場合、そのアクセス トークンにはトークンを付与したユーザーが使用できる権限のみが割り当てられます。たとえば、jane@example.com に example-bucket
に対する read-only
アクセスが許可されている場合、Jane から read-write
アクセス権が付与されたアプリケーションは、彼女に代わって example-bucket
に書き込みを行うことはできません。
次のステップ
- Cloud Storage での暗号化の詳細を確認する。