クライアント認証情報の取得

このトピックでは、すぐに使えるよう用意されているデベロッパー アプリとプロダクトを使用して開発とテストを行うために、クライアント認証情報(別名、デベロッパー キー)を取得する方法を説明します。本番環境でも手順は同様ですが、使用するデベロッパー アプリ、プロダクト、その他のエンティティはお客様独自のものとなります。

クライアント認証情報の概要

OAuth 2.0 フローに参加する場合は例外なく、すべてのクライアント アプリを Apigee Edge(認可サーバー)に登録する必要があります。アプリを登録すると、コンシューマ IDコンシューマ シークレットという 2 つのキーが割り当てられます。コンシューマ ID は公開鍵に相当します。一方、コンシューマ シークレットは決して公開してはなりません。Apigee Edge はこれらのキーをクライアント認証情報として使用して、各クライアント アプリを一意に識別します。

クイック手順

このクイック手順では、Apigee Edge 組織の作成時に構成される既製のアプリのうちの 1 つから、デベロッパー キーを取得する方法を説明します。取得したキーは、主に開発とテストに使用できます。

  1. Apigee Edge のアカウントにログインします。
  2. [Publish] > [Developer Apps] の順に選択して [Developer Apps overview] ページを開きます。
  3. [Weather App] をクリックして [Weather App overview] ページを開きます。このアプリに関連付けられているデベロッパーは Nicolai Tesla です。このアプリとデベロッパーは、組織の作成時にデフォルトでプロビジョニングされています。すべてのデベロッパー アプリにはデベロッパーが関連付けられている必要があります。
  4. [Products] セクションで、[Premium Weather API] プロダクトの横にある [Show] をクリックして [Consumer ID] と [Consumer Secret] の値を表示します。
  5. この 2 つの値をコピーして保存します。後でアクセス トークンを取得するために API 呼び出しを行う際に、これらの値が必要になります。

Edge API を使用してクライアント認証情報を取得する

管理 API を呼び出して、アプリのコンシューマ キーとコンシューマ シークレットを取得することもできます。それにはまず、次の API 呼び出しを行って、組織内のアプリのリストを取得します。

    $ curl https://api.enterprise.apigee.com/v1/o/{org_name}/apps \
    -u email:password
    

この呼び出しによって、アプリ ID に基づくアプリのリストが返されます。

    [ "da496fae-2a04-4a5c-b2d0-709278a6f9db", "50e3e831-175b-4a05-8fb6-05a54701af6e" ]
    

特定のアプリのプロファイルを取得するには、そのアプリのアプリ ID に対する単純な GET 呼び出しを行います。

    $ curl https://api.enterprise.apigee.com/v1/o/{org_name}/apps/{app_id} \
    -u email:password
    

例:

    $ curl https://api.enterprise.apigee.com/v1/o/{org_name}/apps/da496fae-2a04-4a5c-b2d0-709278a6f9db \
    -u email:password
    

この API 呼び出しにより、指定したアプリのプロファイルが返されます。たとえば、weatherapp のアプリ プロファイルは次の JSON 表現で構成されています。

    {
      "accessType" : "read",
      "apiProducts" : [ ],
      "appFamily" : "default",
      "appId" : "da496fae-2a04-4a5c-b2d0-70928a6f9db",
      "attributes" : [ ],
      "callbackUrl" : "http://weatherapp.com",
      "createdAt" : 1380290158713,
      "createdBy" : "noreply_admin@apigee.com",
      "credentials" : [ {
        "apiProducts" : [ {
          "apiproduct" : "PremiumWeatherAPI",
          "status" : "approved"
        } ],
        "attributes" : [ ],
        "consumerKey" : "bBGAQrXgivA9lKu7NMPyYpVKNhGar6K",
        "consumerSecret" : "hAr4Gn0gA9vyvI4",
        "expiresAt" : -1,
        "issuedAt" : 1380290161417,
        "scopes" : [ ],
        "status" : "approved"
      } ],
      "developerId" : "5w95xGkpnjzDBT4",
      "lastModifiedAt" : 1380290158713,
      "lastModifiedBy" : "noreply_admin@apigee.com",
      "name" : "weatherapp",
      "scopes" : [ ],
      "status" : "approved"
    }
    

consumerKeyconsumerSecret の値をメモします。

さらに詳しく

アプリの登録と鍵管理について詳しくは、アプリケーションの登録と API キーの管理をご覧ください。