設定應用程式註冊

您正在查看 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

開發人員可透過開發人員服務入口網站的「我的應用程式」頁面註冊應用程式。 開發人員可透過入口網站的主選單存取「我的應用程式」頁面:

如要註冊新應用程式,開發人員請在「我的應用程式」頁面上選取「新增應用程式」按鈕。

資訊平台隨即會顯示預設應用程式註冊表單:

根據預設,開發人員只需指定應用程式名稱、回呼網址,以及要新增至應用程式的 API 產品清單。

身為 API 供應商,您可以完全控管應用程式註冊程序。舉例來說,您可以設定:

  • 入口網站提供的 API 產品清單
  • 是否有預設的 API 產品
  • 是否需要回呼網址
  • API 金鑰是否經過手動或自動核准,可用於 API 產品
  • 如要註冊應用程式,是否需要在「新增應用程式」頁面中提供其他資訊

本主題說明如何設定入口網站的應用程式註冊程序。不過,本主題不會說明如何建立 API 產品。詳情請參閱:

您可以設定入口網站,根據指派給開發人員的角色,禁止開發人員建立、刪除或編輯應用程式。舉例來說,您可以將入口網站設為在開發人員註冊時,為所有開發人員建立單一預設應用程式。接著,您只允許部分開發人員新增應用程式,可能會根據開發人員的收費結構或其他特徵來決定。使用角色和權限控管哪些開發人員可以建立、刪除及編輯應用程式。詳情請參閱「新增及管理使用者帳戶」。

指定入口網站上可用的 API 產品

您可以透過兩種方式指定開發人員存取入口網站時可用的 API 產品:

建立 API 產品時指定存取層級

建立 API 產品時,請指定產品的存取權等級選項,如下所示:

如要進一步瞭解存取層級如何影響 Drupal 7 開發人員入口網站中 API 產品的可用性,請參閱「存取層級」。

根據角色限制 API 產品的存取權

啟用 API 產品角色存取權 Drupal 模組後,您可以指定可存取每項 API 產品的角色。

如要根據開發人員角色限制 API 產品的存取權:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 查看開發人員入口網站的角色和使用者指派:
    • 在 Drupal 管理選單中,依序選取「People」>「Permissions」>「Roles」,然後視需要新增或編輯開發人員角色和權限。
    • 在 Drupal 管理選單中選取「People」,然後視需要編輯使用者和角色指派。
  3. 在 Drupal 管理選單中,依序選取「Configuration」>「Dev Portal」>「API Product Role Access」
  4. 選取要存取每項 API 產品的角色。
  5. 按一下「儲存設定」

設定開發人員如何將 API 產品與應用程式建立關聯

如要註冊新應用程式,開發人員只要選取「我的應用程式」頁面上的「新增應用程式」按鈕,即可開啟「新增應用程式」表單:

根據您設定入口網站的方式,開發人員可以在應用程式註冊時,選取一或多個 API 產品來連結應用程式。或者,您也可以指定指派給所有應用程式的預設產品。

入口網站提供下列設定選項,可用於控管註冊應用程式時的 API 產品選項:

  • 請勿將應用程式與任何 API 產品建立關聯。
  • 將所有應用程式與一或多個預設 API 產品建立關聯 (如以下所述)。開發人員無法在應用程式中新增任何其他 API 產品。
  • 允許選取單一 API 產品,但不強制要求。
  • 必須選取單一 API 產品。
  • 允許使用者選擇多個 API 產品,但不強制要求。
  • 允許選取多個 API 產品,並要求至少選取一個。

您也可以控制開發人員用來選取 API 產品的線上表單中顯示的 HTML 元素。選項包括:

  • 下拉式清單。
  • 核取方塊或圓形按鈕。如果開發人員可以選取多個 API 產品,系統會顯示核取方塊;如果開發人員只能選取單一 API 產品,則會顯示圓形按鈕。

如要設定 API 產品選項:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 在 Drupal 管理選單中,依序選取「Configuration」>「Dev Portal Settings」>「Application Settings」
  3. 在「Application Settings」(應用程式設定) 頁面上,展開「API Product settings」區域。
  4. 在「API Product Handling」(API 產品處理) 下方,選取控制 API 產品選取作業的選項。
  5. 如果您指定「將所有應用程式與一個或多個預設 API 產品建立關聯 (在下方設定)」選項,請在「預設 API 產品」下方設定預設產品。
  6. 在「API 產品小工具」下方,選取開發人員用來選取 API 產品的 HTML 元素。
  7. 儲存設定。

設定回呼網址處理方式

如果 API 產品中的 API Proxy 使用「三方 OAuth」(授權碼授權類型),開發人員在註冊應用程式時,就必須指定回呼網址。回呼網址通常會指定應用程式的網址,該應用程式會代表用戶端應用程式接收授權碼。此外,這個網址字串會用於驗證。要求授權碼和存取權權杖時,用戶端必須將此網址傳送至 Apigee Edge,且 redirect_uri 參數必須與已註冊的參數相符。詳情請參閱「實作授權程式碼授權類型」。

如要控制 API 產品選取的回呼網址:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 在 Drupal 管理選單中,依序選取「Configuration」>「Dev Portal Settings」>「Application Attributes」
  3. 在「Application Settings」(應用程式設定) 頁面上,展開「Callback URL settings」(回呼網址設定) 區域。
  4. 在「回呼網址處理」下方,選取下列任一選項。
    • 所有開發人員的應用程式都必須提供回呼網址。
    • 回呼網址是所有開發人員應用程式的選用項目。
    • 回呼網址既不需要提供,也不會顯示。
  5. 儲存設定。

顯示應用程式使用情況的數據分析

入口網站可顯示應用程式使用情形的分析資訊。如果啟用數據分析顯示功能,應用程式開發人員就能在「我的應用程式」頁面上查看每個應用程式的數據分析資料。舉例來說,開發人員可以為應用程式顯示下列數據分析資料:

  • 處理量
  • 回應時間上限
  • 最短回應時間
  • 訊息數量
  • 錯誤數

如要在入口網站上啟用數據分析功能:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 在 Drupal 管理選單中,依序選取「Configuration」>「Dev Portal」>「Application Settings」
  3. 在「應用程式設定」頁面上,展開「應用程式效能設定」區域。
  4. 勾選「Show Developer App analytics tab」(顯示開發人員應用程式分析分頁) 核取方塊。
  5. 選取「測試」或「正式版」,用於查詢 Analytics 資料的環境。如果是公開的入口網站,通常會選取「Production」
  6. 儲存設定。

如何在應用程式入口網站上顯示數據分析:

  1. 在「我的應用程式」頁面上選取應用程式名稱。
  2. 選取應用程式的「Analytics」連結。
  3. 選取要顯示的數據分析類型和日期範圍:
  4. 系統會顯示所選資訊:

手動核准或撤銷 API 產品的 API 金鑰

開發人員在應用程式中新增 API 產品並註冊應用程式後,入口網站會將該應用程式的 API 金鑰傳回給開發人員。接著,開發人員會使用該 API 金鑰存取與應用程式相關聯的 API 產品所隨附的 API Proxy。

建立 API 產品時,您可以控制每個 API 產品的金鑰核准程序:

核准程序可能會是:

  • 自動:開發人員註冊應用程式時,入口網站會針對 API 產品傳回已核准的 API 金鑰。您之後可以撤銷自動核准的金鑰。
  • 手動 - 開發人員註冊應用程式時,入口網站會傳回 API 金鑰,但不會為使用手動金鑰核准程序的任何 API 產品啟用金鑰。管理員必須在 Edge 管理 UI 或 API 中手動核准 API 金鑰,開發人員才能使用該金鑰存取 API 產品。您之後可以撤銷手動核准的金鑰。

詳情請參閱「建立 API 產品」。

如果您的入口網站允許開發人員在應用程式中新增多個 API 產品,開發人員可能會使用自動金鑰核准功能新增某些產品,並使用手動核准功能新增其他產品。開發人員可以立即使用已核准的 API 產品所傳回的 API 金鑰,同時等待需要手動核准的產品最終核准。

如要查看應用程式的 API 產品清單,以及 API 產品金鑰核准狀態,開發人員可以在「我的應用程式」頁面中選取應用程式名稱,然後選取「產品」連結:

在這個範例中,Premium Weather API 產品採用手動核准方式,目前正在等待管理員核准金鑰。免費 API 產品使用自動核准功能,且已核准使用金鑰存取該產品。

如何手動核准或撤銷金鑰:

  1. 以具備機構管理權限的使用者身分登入 Edge 管理 UI
  2. 在右上角的下拉式方塊中,選取「API 平台」
  3. 依序選取「發布」>「開發人員應用程式」,即可開啟開發人員應用程式清單。
  4. 選取「Pending」按鈕,即可查看有待處理金鑰要求的應用程式清單:

  5. 選取要核准的應用程式名稱。
  6. 在應用程式詳細資料頁面上,選取右上角的「編輯」按鈕。
  7. 在應用程式的 API 產品清單中,點選「動作」下方的選項:
    • 如要核准金鑰,請針對需要手動核准的每個 API 產品選取「核准」按鈕。

    • 如要撤銷已核准的金鑰,請選取 API 產品的「動作」下方的「撤銷」按鈕,即可撤銷存取權。

  8. 儲存應用程式。API 金鑰現已獲得核准。

控管 API 產品和應用程式快取

API 產品和開發人員應用程式的相關資訊會透過 Apigee Edge 的入口網站,以遠端方式儲存。也就是說,您可以透過 Edge 使用者介面或 API 變更 API 產品和應用程式,而無須透過入口網站。舉例來說,當後端管理員新增 API 產品時,入口網站不會立即更新該資訊。

為確保入口網站與 Edge 後端保持同步,您可以手動觸發入口網站快取更新,在入口網站的 Cron 工作執行時自動更新快取,或同時執行這兩項操作。舉例來說,如果您將 Cron 工作設定為經常執行 (例如每 5 或 10 分鐘執行一次),可能就不需要經常更新 API 產品和開發人員應用程式快取,以免造成額外負擔。在這種情況下,您可以手動觸發快取更新。不過,如果 Cron 工作每小時或每兩小時執行一次,更新快取所需的時間可能不會造成太大影響。

根據預設,系統會在每次執行 cron 時,重新建構 API 產品和開發人員應用程式快取。

如要指定是否要在每次執行 cron 時重建 API 產品和開發人員應用程式快取:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 在 Drupal 選單中,依序選取「Configuration」>「Dev Portal Settings」>「Application Settings」
  3. 勾選或取消勾選「每次執行 cron 時重建 API 產品和開發人員應用程式快取」
  4. 儲存設定。

如何手動更新快取:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 在 Drupal 選單中,依序選取「Home」圖示 >「Flush all caches」

自訂用於註冊應用程式的表單欄位

開發人員註冊應用程式時,入口網站會顯示預設表單:

身為 API 供應商,您可能會想修改這份表單,以便提示開發人員提供其他資訊,例如客戶 ID、應用程式的目標平台或其他資訊。您可以透過入口網站,在這個表單中新增欄位。這些欄位可以是:

  • 必填或選填
  • 由不同的 HTML 元素顯示,例如文字方塊、圓形按鈕、核取方塊等
  • 可設定為在表單的回呼網址欄位和產品欄位之間的任何位置顯示

如要瞭解如何自訂開發人員入口網站提供的應用程式註冊表單,請觀看這部影片。

舉例來說,下列表單顯示客戶 ID 的必填欄位,以及目標平台的選用欄位:

當您在表單中新增欄位時,開發人員提交表單時,系統會自動將欄位值和所有其他欄位上傳至 Edge。也就是說,您可以在 Edge 上查看或修改這些欄位,或是使用 Edge 管理 API 從指令碼存取這些欄位。

舉例來說,如要查看 Edge 管理介面中的新表單欄位,請依序前往「發布」>「開發人員應用程式」,然後選取應用程式名稱。新的欄位值會顯示在頁面「自訂屬性」區域下方,名稱會與欄位的內部名稱相對應:

開發人員在「我的應用程式」頁面中,也會在應用程式的「詳細資料」區域中顯示欄位值:

開發人員也可以在「我的應用程式」頁面上選取應用程式的「編輯」連結,來編輯這些值。

以下程序說明如何使用管理員介面設定應用程式建立表單。Drupal 開發人員可以使用自訂鉤子執行其他自訂動作,包括修改「我的應用程式」頁面。如要進一步瞭解如何透過程式碼變更行為,請參閱檔案中的應用程式 API 範例:/profiles/apigee/modules/custom/devconnect/devconnect_developer_apps/devconnect_developer_apps.api.php

如何在應用程式註冊表單中新增欄位:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 確認已啟用 DevConnect 應用程式屬性管理模組。
  3. 在 Drupal 管理選單中,依序選取「Configuration」>「Dev Portal Settings」>「Dev Portal App Attributes」
  4. 選取頁面頂端的「Add Dev Portal App Attribute」按鈕。
  5. 設定欄位。舉例來說,針對上述的「客戶 ID」欄位,請使用下列設定:
    • 內部名稱 = cust_id。這是用來儲存欄位值的變數名稱。
    • 公開名稱 = 客戶 ID
    • 說明 = 輸入客戶 ID。
    • 勾選「要求使用此屬性」的核取方塊
    • 勾選「顯示此屬性」核取方塊。
    • Widget = 文字方塊
    • 選取「儲存」即可返回開發人員入口網站的「應用程式屬性」頁面。
  6. 選取「儲存變更」
  7. 在 Drupal 選單中,依序選取「Home」圖示 >「Flush all caches」
    您可能需要清除瀏覽器快取,表單才會顯示新欄位。

如要新增選用欄位,讓開發人員指定應用程式的平台,請將欄位屬性設為:

  • 內部名稱 = intended_platforms
  • Public Name = 平台
  • 說明 = 指定應用程式的一或多個平台。
  • 取消勾選「需要這項屬性」的核取方塊
  • 勾選「顯示這個屬性」核取方塊。
  • Widget = 核取方塊清單
  • 選取「儲存」即可返回開發人員入口網站的「應用程式屬性」頁面。

如要重新排序表單上的屬性:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 在 Drupal 管理選單中,依序選取「Configuration」>「Dev Portal Settings」>「Dev Portal App Attributes」
  3. 選取「Name」欄下方的加號 + 符號,然後將屬性拖曳至您要在表單中顯示屬性的位置。
  4. 儲存變更。