例: OAuth 2.0 ベースの認証用の Credentials REST API
この例は、クラウド操作 Credentials REST API を使用して、クライアント・アプリケーションの OAuth 2.0 ベース認証のクライアント資格情報を管理する方法を示しています。
- 開始前に
- 許可: API の呼び出し元にはアカウント管理者ロールが必要です。
- すべてのAPIコールは、コールの IBM® -CSRF-TOKENヘッダーに有効なクロスサイトフォージェリリクエスト(CSRF)トークンを必要とします。
POST /instance/services/csrf_tokenを使用して、CSRF トークンを取得してください。 詳しくは、 クロスサイト・リクエスト・フォージェリーの防止を参照してください。
- OAuth 2.0 クライアント資格情報のリストの取得
- 以下の呼び出しを使用して、サブスクリプションのクライアント資格情報のリストを表示します。
クライアント資格情報のリストが返されます。 各項目には、クライアント ID、資格情報の作成者、作成時刻、および説明が含まれます。 呼び出しにページングを追加するには、以下のように offset パラメーターと size パラメーターを使用します。GET /instance/services/credentials/oauth_clientsGET /instance/services/credentials/oauth_clients?offset=11&size=10 - OAuth 2.0 クライアント資格情報セットの作成
- クライアント資格情報は、クライアント ID とクライアント秘密鍵で構成されています。 クライアント ID は、呼び出しの本文の JSON オブジェクトで指定した接頭部から生成されます。 後で資格情報の使用目的を簡単に識別できるように、説明も指定することをお勧めします。例えば、ローン・アプリケーションの資格情報を作成する場合、以下のような呼び出しを使用します。
返されるオブジェクトには、生成されたクライアント ID とクライアント秘密鍵が含まれます。 これらの資格情報をサービス資格情報とともに使用して、ローン・アプリケーションのクラウド環境に対する OAuth ベースのアクセス制御を行います。 詳細については 、「クライアントアプリケーションにおけるOAuth 2.0 ベース認証の使用 」を参照してください。POST /instance/services/credentials/oauth_clients ... { "id_prefix": "loanapp" "description": "OAuth credentials for loan application." } - OAuth 2.0 クライアント資格情報セットの削除
- 次の呼び出しを使用して、クライアント資格情報を削除します。
クライアント ID とクライアント秘密鍵が削除されます。 クライアント・アプリケーションが、まだ OAuth 2.0 ベースの認証の資格情報を使用している場合、それらのアプリケーションは、新しいリフレッシュ・トークンを取得できません。代わりに、HTTPDELETE /instance/services/credentials/{client_id}BAD_REQUEST (400)応答コードが返されます。 詳細については、 クライアントアプリケーションにおけるOAuth 2.0 ベースの認証の使用方法のリフレッシュ手順を参照してください。