首页 文章

Google Cloud Endpoints自定义身份验证

提问于
浏览
1

我对谷歌 Cloud endpoints 很新,我想知道如何使用 endpoints 使用Auth,教程here很好,但我不明白这件事:

  • 它说,我应该为后端的auth方法添加一个用户( 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映射到我的一些自定义的用户实体,是可以检查用户是否真的有权调用后台的方法,而不是只知道该方法是由具有Google帐户的用户调用的吗?我应该为此编写自定义身份验证器,如果是这样,你能告诉我怎么做?

谢谢!

1 回答

相关问题