アクセス・トークンの取得
IBM Cloud® Identity and Access Management (IAM) アクセス・トークンを使用してサービスに対する要求を認証して、Hyper Protect Crypto Services キー管理サービス API の使用を開始します。
アクセス・トークンは、1 時間後に有効期限が切れる一時的な資格情報です。 取得したトークンの有効期限が切れた後は、IBM Cloud API またはサービス API の呼び出しを続行するために、新しいトークンを生成する必要があります。 サービスへのアクセスを維持するには、API キーのアクセス・トークンを定期的に再生成してください。
CLI を使用したアクセス・トークンの取得
IBM Cloud CLI を使用すると、個人用 Cloud IAM アクセス・トークンを迅速に生成できます。
-
IBM Cloud CLI を使用して IBM Cloud にログインします。
ibmcloud login
ログインに失敗した場合は、
ibmcloud login --sso
コマンドを実行して再試行してください。 フェデレーテッドIDを使用してログインする場合は、--sso
パラメーターが必要です。 このオプションを使用する場合、CLI 出力にリストされているリンクに移動して、ワンタイム・パスコードを生成します。 -
Hyper Protect Crypto Services サービス・インスタンスを作成する地域およびリソース・グループを選択します。 次のコマンドを使用して、ターゲットのリージョンおよびリソース・グループを設定できます。
ibmcloud target -r <region_name> -g <resource_group_name>
-
次のコマンドを実行して、Cloud IAM アクセス・トークンを取得します。
ibmcloud iam oauth-tokens
省略された以下の例は、取得した IAM トークンを示しています。
IAM token: Bearer eyJraWQiOiIyM...
API を使用したアクセス・トークンの取得
アクセス・トークンは、API キーを使用し、API キーを IBM Cloud IAM トークンと交換することによって、プログラマチックに取得することもできます。 ユーザーとアプリケーションのどちらを対象としてアクセス・トークンを作成するかに応じて、IBM Cloud ユーザー API キーまたは サービス ID API キーのいずれかを使用します。
-
IBM Cloud CLI を使用して IBM Cloud にログインします。
ibmcloud login
ログインに失敗した場合は、
ibmcloud login --sso
コマンドを実行して再試行してください。 フェデレーテッドIDを使用してログインする場合は、--sso
パラメーターが必要です。 このオプションを使用する場合、CLI 出力にリストされているリンクに移動して、ワンタイム・パスコードを生成します。 -
次のコマンドを使用して、プロビジョンされた Hyper Protect Crypto Services インスタンスが属するリージョンおよびリソース・グループを選択します。
ibmcloud target -r <region_name> -g <resource_group_name>
-
API キーを作成します。
-
ユーザーのアクセス・トークンを取得する場合は、次のコマンドを使用してユーザー API キーを作成します。
ibmcloud iam api-key-create <API_key_name> [-d, --description <description>] [--file <API_key_file_name>]
<API_key_name>
パラメーターを使用して、API キーに固有の名前を指定します。<API_key_file_name>
パラメーターを使用するか、コマンド応答から API キー値をコピーして、後で使用するために必ず API キーを保存してください。 -
アプリケーションのアクセス・トークンを取得する場合は、以下のステップを実行して、サービス ID API キーを作成します。
-
次のコマンドを使用して、アプリケーションのサービス ID を作成します。
ibmcloud iam service-id-create <service_ID_name> [-d, --description <description>]
<service_ID_name>
パラメーターを使用して、サービス ID に固有の名前を指定します。 -
次のコマンドを使用してサービス ID API 鍵を作成します。
ibmcloud iam service-api-key-create <API_key_name> <service_ID_name> [-d, --description <description>] [--file <API_key_file_name>]
<API_key_name>
パラメーターを使用して API キーに固有の名前を指定し、<service_ID_name>
を前のステップでサービス ID に割り当てた固有のエイリアスに置き換えます。<API_key_file_name>
パラメーターを使用するか、コマンド応答から API キー値をコピーして、後で使用するために必ず API キーを保存してください。
-
-
-
アクセス・ポリシーに基づいて、Hyper Protect Crypto Services インスタンスに対する適切なアクセス権限をユーザーまたはサービス ID に割り当てます。
IAM のアクセス役割が特定の Hyper Protect Crypto Services サービス・アクションにどのように対応しているのかについては、役割と許可を参照してください。
-
IAM Identity Services 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:ibm:params:oauth:grant-type:apikey&apikey=<API_key>" > token.json
その要求で、
<API_key>
を、前のステップで作成したユーザー API キーまたはサービス ID API キーに置き換えます。 省略された以下の例は、token.json
ファイルの内容を示しています。{ "access_token": "eyJraWQiOiIyM...", "expiration": 1512161390, "expires_in": 3600, "refresh_token": "...", "token_type": "Bearer" }
「ベアラー」 トークン・タイプの接頭部が付いたフルの
access_token
値を使用して、Hyper Protect Crypto Services キー管理サービス API を使用してサービスのキーをプログラムで管理します。 Hyper Protect Crypto Services キー管理サービス API 要求の例については、キー管理サービス API 要求の作成を参照してください。