谷歌应用程序引擎是否提供访问控制解决方案



对于在谷歌应用引擎中运行的应用程序,是否有可用的访问控制解决方案?我对IP白名单特别感兴趣。

管理控制台有三个可用角色。

查看器、开发人员和所有者。

https://developers.google.com/appengine/docs/adminconsole/roles

此外,您可以限制特定域上的用户的访问权限。

但你可能想要这个:

https://developers.google.com/appengine/docs/python/gettingstarted/usingusers

然后,你可以强制用户通过谷歌(或其他一些选择)登录,然后你就可以看到他们的唯一ID。然后,你就可以使用该唯一ID来授予或拒绝访问你网站的各个部分。

https://developers.google.com/appengine/docs/python/tools/webapp/utilmodule

谷歌应用引擎基于谷歌基础设施提供了一些有用的服务,应用程序可以使用SDK中包含的库访问这些服务。其中一项服务是用户服务,它可以让你的应用程序与谷歌用户帐户集成。通过用户服务,您的用户可以使用他们已经登录到您的应用程序的谷歌帐户。区块报价

我对白名单IP也有类似的需求。我在数据存储中有一个允许的IP列表,然后每次向AppEngine发出请求时,我都会检查调用IP地址,并检查它是否列在memcache中,如果没有,我会在数据存储区中查询它。如果我找到它,我会将它保存在memcache上以备将来的请求,并返回请求。如果我找不到它,我会记录它并返回一个错误。

将IP保留在memcache中的原因是,如果我有一个来自IP的请求,他们很快就会发送更多请求(因为他们已经登录并在做一些事情)。

为了在appengine(在java中)中获得IP,我使用

String IPString = getThreadLocalRequest().getRemoteAddr();

最新更新