2017-10-19 6 views
0

Firebaseを使用してネイティブのAndroidアプリケーションを開発しています(他のカスタムサーバーはありません、Firebaseのみ) 他のサービスを使用する必要があります。 (Facebook API、Twitter APIなど)OAuth2.0サーバとしてFirebase Realtimeデータベース/ Firestoreを使用できますか?

サービスプロバイダは、OAuth 2.0を通じてREST APIを提供しています。 私はOAuth 2.0の初心者です。私は知識も経験もありません。

昨日私は "Implicit Grant"を実装しようとしましたが、うまくいきました。 私はaccess_tokenを得ることができ、それを使ってREST APIを使うことができます。

しかし、パラメータ「expires_in」:604800(7日間)があります。 これは、お客様が7日後に再承認する必要があることを意味します。 (refresh_tokenはありません)

私は実装を「暗黙的な許可」から「許可コードの付与」に変更することを検討しています。 しかし、私はすでにあなたに言った、私はOAuth 2.0の初心者です。 (私は経験はありません、これは初めてのことです)

"Authorization Code Grant"を選択した場合、 "access_token"を交換するための "code"を保存する必要があります。 次にどこに保管すればよいですか? 私はそれをローカルデバイスに保存できると思うが、セキュリティは考慮されていない。 「コード」を格納するストレージとして「Firebase Realtime database/Firestore」を使用することができますか?

私はそれが妥当だと思います。 しかし、私はわからない...

答えて

0

あなたはあなたがのOauthサーバーを構築したい場合は特に初心者は、それは、シンプルなGoogle検索が https://stormpath.com/blog/what-the-heck-is-oauthhttps://stormpath.com/blog/what-the-heck-is-oauth

火災のベースを返しOAuth 2.0の詳細を読んで価値があると述べたので、構築されたサーバに十分なだけではデータベースは、あなたが

、あなたは**認証グラント**または暗黙のフローを実装する場合、それはブラウザで発生する必要があるので、 Cloud Functions

を使用することができるため、着信要求を処理するために、エンドポイントが必要

    あなたはその後、ユーザーがログインできるログインページを返す
  1. (ブラウザで)クライアントからの着信GETリクエストを処理するために、クラウド機能を使用することができます
  2. まず、
  3. その後認証ページからの要求を提出し、それを認証し、場合ハンドル有効な許可場合、最後

URIをリダイレクト使用してクライアントに(暗黙的な流れの場合) access_tokenはコード又は、firebaseデータベース内

  • 店舗リターン生成されたコードを生成します許可フロー、トークンにアクセスするコード交換を処理する別のクラウド関数が必要

  • +0

    ありがとうございますが、OAuthサーバーを作成したくありません。私はちょうど既に存在するものを使用したい(facebook/twitterのように)。どんな意味であれ、それは可能です。 – yoonhok

    +0

    私は理解できません... "クラウド機能"を使用する必要がありますか?私はネイティブモバイルが同じことをすることができると思います。なぜ私は "クラウド機能"を使うべきか分かりません。 – yoonhok

    +0

    申し訳ありませんが、私はOauthサーバーを実装する必要があるようにあなたの質問を読んで –

    関連する問題