IAM アクセス・トークンの取得
IBM Analytics EngineAPIの使用を開始します。そのとき、IBM Cloud®Identity and Access Management (IAM)アクセス・トークンを使用してサービスに対する要求を認証します。
アクセス・トークンは、1 時間後に有効期限が切れる一時的な資格情報です。 取得したトークンの有効期限が切れた後、IBM Analytics EngineAPIの呼び出しを続行するには、新しいトークンを生成する必要があります。 サービスへのアクセス権限を維持するには、定期的に API 鍵のアクセス・トークンを再生成してください。
トークンをプログラマチックに取得するために推奨される方法は、IBM Cloud®ID用のAPIキーを作成し、IAMトークンAPIを使用してそのキーをトークンと交換することです。
以下の 2 つの方法でトークンを作成できます。
IBM Cloud REST API を使用したトークンの作成
IBM Cloud でトークンを作成するには、以下のようにします。
-
IBM Cloudにサインインします。 次に、 管理>セキュリティー>プラットフォームAPIキーを選択します。
-
独自の個人 ID の API キーを作成し、キー値をコピーして、安全な場所に保存します。 ページを終了した後は、この値にアクセスできなくなります。
-
作成した API キーを IAM ID トークン API で使用して、IAM トークンを生成します。 以下に例を示します。
curl -X POST \ 'https://iam.cloud.ibm.com/identity/token' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey=<your iam api key>'API 構文について詳しくは、IAM ID トークン API を参照してください。
以下に、返される応答の例を示します。
{ "access_token": "eyJraWQiOiIyMDE3MDgwOS0wMDowMDowMCIsImFsZyI6…", "refresh_token": "zmRTQFKhASUdF76Av6IUzi9dtB7ip8F2XV5fNgoRQ0mbQgD5XCeWkQhjlJ1dZi8K…", "token_type": "Bearer", "expires_in": 3600, "expiration": 1505865282 } -
IBM Analytics Engine API 呼び出しに
access_tokenプロパティーの値を使用します。 IBM Analytics Engine API への要求の許可ヘッダー・パラメーターとしてaccess_token値を設定します。 形式はAuthorization: Bearer <access_token_value>です。以下に例を示します。
Authorization: Bearer eyJraWQiOiIyMDE3MDgwOS0wMDowMDowMCIsImFsZyI6IlJTMjU2In0...
IBM Cloud CLI を使用したトークンの作成
IBM Cloud CLI を使用してトークンを作成する前に、以下の前提条件を満たしていることを確認してください。
- 有効な IBMid を持っています。
- IBM Cloud CLI をダウンロードして、インストールしています。
IBM Cloud CLI を使用してトークンを作成するには、以下のようにします。
-
IBM Cloud CLI にログインします。
ibmcloud api https://cloud.ibm.com ibmcloud login <enter your credentials>複数の IBM Cloud アカウントがある場合は、現行セッション用のアカウントを選択するよう求められます。 また、IBM Cloud 内の組織とスペースを選択する必要があります。
-
IAM アクセス・トークンを取り出します。
ibmcloud iam oauth-tokens出力は IAM トークンを返します。
トークンを使用する場合は、API呼び出しで渡すトークンの値から
Bearerを削除します。