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

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

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

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

クイック手順

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

  1. 下記の手順に従って [Developer Apps] ページにアクセスします。

    Edge

    Edge UI を使用して [Developer Apps] ページにアクセスするには:

    1. apigee.com/edge にログインします。
    2. 左側のナビゲーション バーで [Publish] > [Apps] を選択します。
    3. [+Proxy] をクリックします。

    Classic Edge(Private Cloud)

    Classic Edge UI を使用して [Developer Apps] ページにアクセスするには:

    1. http://ms-ip:9000 にログインします。ここで、ms-ip は、Management Server ノードの IP アドレスまたは DNS 名です。
    2. 上部のナビゲーション バーで [Publish] > [Developer Apps] を選択します。
  2. [Weather App] をクリックして Weather App の概要ページを開きます。このアプリに関連付けられているデベロッパーは Nicolai Tesla です。このアプリとデベロッパーは、組織の作成時にデフォルトでプロビジョニングされています。すべてのデベロッパー アプリにはデベロッパーが関連付けられている必要があります。
  3. [Products] セクションで、Premium Weather API プロダクトの横にある [Show] をクリックして、コンシューマ ID とコンシューマ シークレットの値を表示します。
  4. この 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 キーの管理をご覧ください。