【问题标题】:Hiding my Google Cloud Endpoints API from the public向公众隐藏我的 Google Cloud Endpoints API
【发布时间】:2014-05-24 03:45:06
【问题描述】:

几周前,我们使用谷歌云端点和其他谷歌云服务(数据存储、云 sql 等)启动了一个项目。

我们的应用程序将让用户完成注册过程,他们将在其中创建自己的用户名/密码并提供其他个人资料信息。我们不想使用 Google/Facebook/Twitter OAUTH 进行身份验证。我们还希望对公众隐藏我们的 API。

我们是否有可能隐藏或不允许从 API Explorer 访问 API?

【问题讨论】:

    标签: google-cloud-endpoints


    【解决方案1】:

    除了提供的那些之外,还有三种可能的安全机制:

    1. Specify Client IDs 在 API 级别,以便客户端使用 只有ID才能连接
    2. 构建您自己的 OpenID 提供程序,该提供程序使用 来自您商店的用户数据。
    3. 在调用端点之前不使用端点登录。在端点方法中传递并验证令牌。

    【讨论】:

    • 但是这仍然不会从公众视野中隐藏我的其他 API。我打算使用#3 解决方案。
    【解决方案2】:

    如果您的 API 在 API Explorer 下可见,我假设您的配置类似于:

    @Api(clientIds = {
            ClockyEndpoint.WEB_CLIENT_ID,
            ClockyEndpoint.ANDROID_CLIENT_ID,
            Constant.API_EXPLORER_CLIENT_ID
    })
    

    只需删除客户端 ID Constant.API_EXPLORER_CLIENT_ID,它应该不再可以使用 API 资源管理器访问。

    【讨论】:

    • 这对我不起作用。试过了,但我仍然可以从隐身浏览器窗口查看我的应用程序的 API。
    猜你喜欢
    • 1970-01-01
    • 2016-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-13
    相关资源
    最近更新 更多