クライアント ID とクライアント秘密鍵による API の保護 (IBM Cloud を使用する場合)
時間: 10 分 スキル・レベル: 初級
目標
このチュートリアルでは、API Connect V5 でクライアント ID とクライアント秘密鍵によって API を保護する手順を取り上げます。 開発者ポータルにアプリケーションを登録すると、そのアプリケーションを識別するためのクライアント ID が生成されます。 オプションとして、(パスワードの役割を果たす) クライアント秘密鍵を生成することもできます。 アプリケーションから API を呼び出すときには、クライアント ID とクライアント秘密鍵を提供する必要があります。
前提条件
始める前に、以下のチュートリアルのいずれかを完了します。
API の識別メカニズムの設定
-
API の「設計」ビューに移動します。 a. ナビゲーション・パネルで**「ドラフト」** をクリックします。 b. 「 API 」タブをクリックします。c. 前のチュートリアルで作成した 気象プロバイダー API をクリックします。 その API が**「設計」**ビューで開かれます。
-
「設計」ビューで以下のようにします。 a. 「セキュリティー定義」セクションで、「セキュリティー定義の追加 (Add Security Definitions)」(+ アイコン) をクリックしてから、**「API キー」**をクリックします。 b. 以下の 2 つの API キーを追加します。 両方のキーについて、「場所」フィールドが「ヘッダー」に設定されていることを確認します。
- 名前: クライアント ID。パラメーター名: X-IBM-Client-Id
- 名前: クライアント秘密鍵、パラメーター名: X-IBM-Client-Secret
-
「セキュリティー」セクションで、新しいセキュリティー・オプションを次のように追加します。 a. クライアント ID とクライアント秘密鍵を選択します。 b. API を保存します。 c. **「アセンブル」**タブをクリックします。
API に対する変更のテスト
-
「アセンブル」タブで「テスト」アイコンをクリックして、変更をテストします。
-
「テスト」ページの「セットアップ」パネルで**「製品の再公開」**をクリックして、最新の変更内容を取り込みます。 このオプションによって API 製品が更新され、サンドボックス・カタログに公開されます。
-
製品を再公開したら、テスト・パネルで get /current 操作をクリックします。
-
テスト・パネルを調べ、クライアント ID とクライアント秘密鍵の値が既に取り込まれていることを確認します。 これらは、サンドボックス用に生成されるテスト値であり、API を使用するアプリケーションのキーを表します。
クライアント ID とクライアント秘密鍵は、「ダッシュボード」>「カタログ」>「設定」>「エンドポイント」でも確認できます。
-
アメリカの有効な郵便番号 (90210 など) を入力します。
-
**「呼び出し」**をクリックします。 API によって
200 OK
応答と天候情報のメッセージ本文が返されます。 -
「クライアント ID」フィールドに戻ります。
-
クライアント ID をランダムな値に置き換えます。
-
**「呼び出し」**をクリックしてテストをもう一度実行します。 今回は、
401 Unauthorized
応答と、「クライアント ID が登録されていない」というメッセージが返されます。
クライアント ID とクライアント秘密鍵を使用した API の呼び出し
セキュリティー設定のテストは、「探索」ツールでも行えます。 「探索」ツールでは、プロキシー・エンドポイントを明示的に呼び出し、クライアント ID とクライアント秘密鍵をヘッダーの値として渡します。
-
**「探索」をクリックし、「サンドボックス」**をクリックします。
-
リストから GET /current 操作をクリックします。
-
**「操作の呼び出し」**をクリックして、テストを実行します。
まとめ
このチュートリアルでは、API の識別メカニズムを設定する方法、API に対する変更をテストする方法、クライアント ID とクライアント秘密鍵を使用して API を呼び出す方法を学習しました。
次のステップ
開発者ポータルのセットアップと構成に進んで、API のソーシャル化を開始します。
作成 > 管理 > 保護 > ソーシャル化 > 分析