检索访问令牌
您必须获得 IBM Cloud® Identity and Access Management (IAM) 访问令牌,以验证您对 IBM® Cloud Logs Routing 服务的请求。
使用 CLI 检索访问令牌
您可以使用 IBM Cloud CLI 快速生成个人云 IAM 访问令牌消费者代表用户访问受保护资源时使用的值,而不是使用用户的服务提供商凭据。。
-
使用 IBM Cloud CLI 登录 IBM Cloud。
ibmcloud login如果登录失败,请运行
ibmcloud login --sso命令重试。 使用联合标识登录时需要--sso参数。 如果使用了该选项,请访问 CLI 输出中列出的链接以生成一次性通过代码。 -
运行以下命令获取 IBM Cloud IAM 访问令牌,并通过运行以下命令将其导出为环境变量:
export IAM_TOKEN=`ibmcloud iam oauth-tokens --output json | jq -r '.iam_token'`
使用 API 检索访问令牌
您也可以通过程序检索访问令牌,方法是首先为您的应用程序创建一个 服务 ID API 密钥,然后用您的 API 密钥交换 IBM Cloud IAM 令牌。
-
创建 服务 ID API 密钥。
-
调用 IAM 身份服务 API 获取访问令牌。
$ curl -X POST \ "https://iam.cloud.ibm.com/identity/token" \ -H "content-type: application/x-www-form-urlencoded" \ -H "accept: application/json" \ -d 'grant_type=urn%3Aibm%3Aparams%3Aoauth%3Agrant-type%3Aapikey&apikey=<API_KEY>' > token.json在请求中,将
<API_KEY>替换为在上一步中创建的 API 密钥。 以下截断的示例显示token.json文件的内容:{ "access_token": "b3VyIGZhdGhlc...", "expiration": 1512161390, "expires_in": 3600, "refresh_token": "dGhpcyBjb250a...", "token_type": "Bearer" }
访问令牌有效期为 1 小时,但是可根据需要重新生成。