【问题标题】:How to provide credentials for calling Key Protect service within Bluemix application?如何为在 Bluemix 应用程序中调用 Key Protect 服务提供凭据?
【发布时间】:2017-02-03 20:46:23
【问题描述】:

要调用 Key Protect service API,您需要提供 Authorization、Bluemix-space 和 Bluemix-org 标头。 Authorization 标头包含一个Bluemix 访问令牌。此类令牌可以通过调用 cf oauth-token 命令(参见How to get OAuth token from CloudFoundry)。

我不明白的是:

  1. Bluemix 中此类令牌的默认有效性是什么?
  2. 如果我需要从 Blumeix(例如 Liberty)应用程序调用 Key Protect 服务,我需要将授权凭证存储在某处以便调用该服务。最好/建议的方法是什么?环境变量?用户提供的服务?

【问题讨论】:

    标签: ibm-cloud key-protect


    【解决方案1】:

    使用 cf oauth-token 命令返回的 oauth-token 对给定会话有效。然而,在 Bluemix 中,该会话的有效期设置为 1 天。您可以在此处查看相关线程,其中已回答,https://developer.ibm.com/answers/questions/207063/oauth-access-token-expiry-how-to-increase-validity.html

    您可以参考此处的 Key Protect API 文档,了解如何使用从 Bluemix 检索到的 oauth 令牌,https://console.ng.bluemix.net/apidocs/639-key-protect?&language=node#retrieve-secrets-based-on-a-search-query

    【讨论】:

    • 谢谢,但是我真的不清楚如何在运行的应用程序中使用 Key Protect API 而不提供每天新的令牌?我的应用需要定期访问 Key Protect API 以获取各种机密。
    • 其中一种方法是使用 cf 客户端 SDK,例如 github.com/cloudfoundry/cf-java-client,检索令牌并将其设置为应用程序中的标头,每次您的应用程序需要调用 Key Protect 服务 API。您将无法永远使用一个令牌,令牌已过期。
    • 但这又意味着将 id 和密码存储在任何地方以获取令牌,例如在 ENV 变量或自定义用户提供的服务中。
    猜你喜欢
    • 1970-01-01
    • 2015-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-27
    • 1970-01-01
    • 1970-01-01
    • 2016-03-26
    相关资源
    最近更新 更多