2016-07-02 44 views
0

這裏的理念是:火力地堡+安卓+ Spring創建微服務

  • 有一個Android應用程序,它會消耗我將創建使用Spring服務。但是,這個服務應該具有某種安全性,所以只有在我的android應用上登錄的人才能使用這些服務。

  • 在我的android應用程序中,我將使用Firebase進行身份驗證,使用電子郵件和密碼。所以,我不需要配置任何服務器來完成這個控制。 (像Spring的OAuth2)

的問題是,一旦用戶登錄我的應用程序,並希望消費一些服務,比如GET的東西名單,我會在服務器上使用Spring提供,怎麼能我檢查用戶是否登錄了應用程序,因此我可以授予對該服務的訪問權限?

+2

請參閱https://firebase.google.com/docs/auth/server/verify-id-tokens –

+0

這就是我正在尋找的! – Gabriel

回答

2

您的Android應用程序需要將用戶令牌傳遞到您的應用程序服務器,然後您可以驗證該令牌是否有效並使用其中的信息。

完整的信息,請參閱Firebase documentation on verifying id tokens,包括這樣的描述:

如果你的火力地堡的客戶端應用程序使用自定義的後端服務器進行通信,您可能需要確定當前登錄的用戶在該服務器上。要安全地完成此操作,請在成功登錄後,使用HTTPS將用戶的ID令牌發送到您的服務器。然後,在服務器上,驗證ID令牌的完整性和真實性,並從中檢索uid。您可以使用以這種方式傳輸的uid來安全地識別服務器上當前登錄的用戶。

還要注意這第一個音符藍色:

注:在服務器上驗證ID令牌許多用例可以通過使用安全規則爲Firebase Realtime DatabaseFirebase Storage來完成。看看這些解決你的問題,然後再驗證自己的ID令牌。

雖然它可能不適用於您的用例,但請始終記住,因爲最可維護的代碼是您不必編寫的代碼。 :-)