質問: swift4 xcode9.1 iosアプリにgoogle認証を実装したいです。 数日調べても理解できなかったので質問します。 Firebase公式サイトに下記の内容があります > > (準備) > > Firebase を iOS プロジェクトに追加します。 > > Podfile に次のポッドをインクルードします。 > > pod 'Firebase/Auth' > > プロジェクトのサーバーキーを取得します。 > > プロジェクトの設定の [サービス アカウント] ページに移動します。 > > [サービス アカウント] ページの [Firebase Admin SDK] セクションの一番下にある [新しい秘密鍵を生成] をクリックします。 > > 新しいサービス アカウントの公開鍵/非公開鍵のペアが、お使いのパソコンに自動的に保存されます。 > > (認証サーバー)にこのファイルをコピーします。 > > > この内容にある、(認証サーバー)というのは何処の何を指すのでしょうか?
回答: Firebase カスタム認証システムは、Firebase が、あらかじめ用意していないアカウントで認証する方法をユーザーが構築する機能です。 Google, Facebook, Twitter, GitHub アカウント等の対応済みアカウントは、あらかじめ Firebase コンソールで認証用の設定画面が用意されていますので、「各API用のクライアント ID/シークレット」を設定すれば、すぐに利用できるようになります。 これら以外のアカウント、たとえば LINE や Slack のユーザーアカウントを使う認証方法は、現在用意されていません。 これらのFirebase のシステム側が対応していないアカウントを使って Firebase 認証をさせる場合に「Firebase カスタム認証システム」を使います。 「カスタム認証システムの認証サーバー」というのは、上記の例で説明すると、LINE や Slack アカウントの認証を行うためのプログラムを動かすために用意するサーバです。 用意するサーバーは、heroku、Google App Engine、AWS、VPS 等の認証するためのプログラムが稼働するサーバーであれば、基本的にはなんでも OK です。 なお、Google アカウントで、Firebase 認証するということでしたら iOS で Google ログインを使用して認証するの方法で、可能です。 この場合(google等対応済みアカウントの場合)、Firebase カスタム認証システムの認証サーバーは、必要ありません。