執行個體 ID 為應用程式的每個執行個體提供專屬 ID。您可以為 Android 和 iOS 應用程式,以及 Chrome 應用程式/擴充功能實作執行個體 ID。
主要功能
除了提供不重複的 ID 以供驗證之外,執行個體 ID 也可以產生用於與其他服務搭配使用的安全性權杖。其他功能包括:
產生安全性權杖
- 執行個體 ID 提供簡單的 API,可產生安全性憑證,授權第三方存取您應用程式的伺服器端代管資源。立即使用這些權杖透過 Google 雲端通訊,為您的應用程式授權推送訊息。
驗證應用程式真實性
- 將執行個體 ID 憑證傳送至您的伺服器,並使用執行個體 ID 服務驗證應用程式套件名稱,並確認其是否具備有效簽名。使用執行個體 ID Cloud Service 的執行個體驗證憑證有助於識別已知的應用程式。為降低成本和備援來回通訊的通訊次數,請將伺服器設定為儲存這些憑證,這樣只需要檢查一次。如果有安全疑慮,您的應用程式可以「deleteTokens」或執行個體 ID 本身,並產生新的 ID。此外,如果 ID 伺服器偵測到錯誤或安全性問題,執行個體 ID 伺服器就會啟動符記或執行個體 ID 的重新整理作業。
確認應用程式裝置已啟用
- 執行個體 ID 伺服器可指出上次安裝您應用程式的裝置上次使用時間。可用來判斷是否要保留應用程式資料,或是傳送推送訊息,再次與使用者互動。
識別及追蹤應用程式
- 全世界的應用程式執行個體 ID 均不重複,因此資料庫可以使用這個 ID 來識別及追蹤應用程式執行個體。您的伺服器端程式碼可透過執行個體 ID 雲端服務,驗證執行個體 ID 是否為正版,且與向伺服器註冊的原始應用程式 ID 相同。基於隱私考量,應用程式可以刪除執行個體 ID,使其不再與資料庫中的任何記錄相關聯。應用程式下次呼叫執行個體 ID 時,會取得全新的執行個體 ID,與先前的 ID 沒有關係。
執行個體 ID 生命週期
- 應用程式 ID 會在您的應用程式上線時發出
InstanceID
。「InstanceID
」採用公開/私密金鑰對備份,其中含有儲存在本機裝置上的私密金鑰,以及透過執行個體 ID 服務註冊的公開金鑰。 - 您的應用程式可視需要使用
getID()
方法要求新的InstanceID
。如果您有支援應用程式的應用程式,應用程式就可以儲存在伺服器上。 - 應用程式可視需要使用
getToken()
方法從執行個體 ID 服務要求憑證,和InstanceID
一樣,您的應用程式也可以將憑證儲存在您自己的伺服器上。核發給應用程式的所有憑證都屬於應用程式的InstanceID
。 - 符記不重複且安全無虞,但您的應用程式或執行個體 ID 服務可能會在發生安全問題,或在使用者在裝置還原期間解除安裝並重新安裝應用程式時,更新憑證。您的應用程式必須實作事件監聽器,以回應來自執行個體 ID 服務的權杖重新整理要求。
用戶端實作
執行個體 ID 可在 Android 和 iOS 上執行。您必須分別在用戶端應用程式中加入適當的程式庫。Android 需要 Google Play 服務。如果您想要產生憑證,必須使用 Google Developers Console 產生的專案 ID。