簡體   English   中英

Google Cloud Endpoints自定義身份驗證

[英]Google Cloud Endpoints custom Authentication

我對google cloud端點非常陌生,我想知道如何對端點使用Auth, 這里的教程很好,但是我不明白這件事:

  • 它說,我應該在后端的auth方法中添加一個user( com.google.appengine.api.users.User )參數。 如果我想使用android作為客戶端,我應該提供GoogleAccountCredential對象來進行經過身份驗證的調用[ 2 ]。 GoogleAccountCredential是通過這種方式創建的
credential = GoogleAccountCredential.usingAudience(this,
"server:client_id:1-web-app.apps.googleusercontent.com");
credential.setSelectedAccountName(accountName);

accountName是Google帳戶的名稱,因此,我假設擁有Google帳戶並使用我的Google Cloud Endpoint應用程序的每個人都可以創建GoogleAccountCredential對象,並向后端進行經過身份驗證的調用。

但是我的后端顯然有很多方法,這些方法只能由我的應用程序的某些用戶調用。 (示例:有一個方法,它將為我提供有關我的朋友的詳細信息,很明顯,該方法只能由他的朋友調用。) 因此,我的問題是:有沒有辦法將com.google.appengine.api.users.User映射到我的自定義User實體,以便可以檢查User是否真的有權調用后端的方法,而不僅僅是知道該方法是由具有Google帳戶的用戶調用的嗎? 我應該為此編寫我的自定義身份驗證器嗎?

謝謝!

您可以設置一個Authenticator類,該類將處理自定義身份驗證。 https://cloud.google.com/appengine/docs/java/endpoints/javadoc/com/google/api/server/spi/config/Authenticator,您只需要在@ApiMethod中設置身份驗證器參數,就可以編寫您的自己的認證邏輯

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM