5
2

More than 1 year has passed since last update.

IBM Cloud: ibmcloudコマンドでAPI Keyを使ってログインする方法

Last updated at Posted at 2021-04-06

1. はじめに

ibmcloudコマンドを使ってログインするには、ibmcloud loginとかibmcloud login -ssoを使えばいいのだが、毎回ID/Passwordを入力して認証するのが面倒である。
API Keyを使えばこうした手間を省けることが意外に知られていないので、念の為紹介しておく。

なお、IBM Cloud CLIをVPCにインターネットアクセスなしに導入する方法はこちらを参照して下さい。

2. API Keyの取得

IBM Cloudの管理コンソールから、Manage -> Access(IAM) -> API Keysとたどり、API Keyを生成する。

  • Create an IBM Cloud API Keyを押下 image.png
  • API Keyに対する適当なNameやDescriptionを入力。image.png
  • API Keyが生成されるので、これをコピーしてファイルに保管しておく(今回はibmcloud_apikeyとする)。なお、紛失した場合は二度とアクセスできないため、再作成になる。image.png

3. API Keyを使ったログイン

以下に幾つかの例を記載する。

3-1. API Keyのみを指定した場合

$ ibmcloud login --apikey @ibmcloud_apikey

3-2. API Endpointやリージョンを指定した場合

$ ibmcloud login -a cloud.ibm.com --apikey @ibmcloud_apikey -r jp-tok

3-3. API Endpoint(Private)を指定した場合

  • CLIの最新バージョンをチェックしに行くのを無効にする。無効にしておかないと、cloud.ibm.comへのアクセスも試行される。詳細は、https://qiita.com/testnin2/items/2c89c13ad90640f0df91 も参考のこと。
  • private endpoint(CSE経由)やprivate endpoint(VPE)は現在us-south(Dallas)やus-east(WDC)でしか利用できないが、後述の通りTrasit Gateway/DAL or WDCのProxy/VPEを併用することで回避することも可能
$ ibmcloud config --check-version=false
$ ibmcloud login -a private.cloud.ibm.com --apikey @ibmcloud_apikey -r us-south

3-4. proxyを指定してPublic経由でアクセスする場合

$ export https_proxy=http://10.0.0.4:3128
$ ibmcloud login -a cloud.ibm.com --apikey @ibmcloud_apikey -r jp-tok

3-5. proxy+VPE+Private経由でアクセスする場合

IBM Cloud: 東京/大阪リージョンのprivate onlyの環境からインターネットに出ることなくCLIを実行する方法を参照

$ export https_proxy=http://192.168.0.19:3128
$ ibmcloud login -a private.cloud.ibm.com --vpc --apikey @ibmcloud_apikey -r jp-tok

4. 参考

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2