少し前にBluemixのID管理画面にAPIKeyが発行できる機能が追加されました。
IBM側で拡張している bx
コマンドでの利用は確認できていたのですが cf
コマンドでの確認をしていませんでしたが確認が取れたので情報を共有しておきます。
apikey
を利用することにより仮にキーが漏洩してもシステム側で容易にリセット可能ですのでこちらを利用して作業をするのがオススメです。とくに Bluemixの場合には IBMIdが利用されており他のIBMのソフトウェアの管理などにも利用されますので扱いには気をつけましょう。
APIの発行の仕方
Manage
メニューからBluemix API Keys
まで進む
Create API Key
をクリック
情報を入力します。
キーが生成されます。
このキーは一度きりしか表示されませんのでダウンロードするか、メモするかしておきましょう。
bxコマンドでの実行例
$ bx login —apikey XXXXXXXXXXXXXXXXXXXXX
API エンドポイント: https://api.ng.bluemix.net
認証中です...
OK
cfコマンドでの実行例
cf側では、ユーザ名が apikey
となりパスワードが XXXXXを先程の APIKEY
となります。
$ cf login -u apikey -p XXXXXXXXXXXXXXXXXXXXXXXXXX
API エンドポイント: https://api.ng.bluemix.net
認証中です...
OK
RESTで利用する際のオプション
これはcfと同様になります。
項目 | 値 | 備考 | |
---|---|---|---|
接続先 | POST | http://login.ng.bluemix.net/UAALoginServerWAR/oauth/token | |
Header | accept | application/json | |
authorization | Basic Y2Y6 | Y2Y6は cf
|
|
content-type | application/x-www-form-urlencoded' | ||
Data | grant_type | password | |
username | apikey | 固定文字列 | |
password | XXXXXXX | ここにAPIKEYを記入 |