本教學課程說明如何使用 Apigee Proxy 精靈,建立具有 整合目標的 Proxy。Proxy 會使用現有整合服務的 API 觸發條件參照,啟動整合服務中的步驟序列。
以下步驟說明如何設定「整合目標」 Proxy,確保在呼叫 Proxy 時順利完成整合。
事前準備
- 確認 Apigee 登入憑證和機構詳細資料。如要在 Apigee UI 中存取 Application Integration 功能和 Proxy 精靈,必須提供這項資訊。
- 建立並發布整合服務,其中包含 API 觸發條件和至少一項工作。
- 如果您尚未建立使用 API 觸發條件的整合功能,請按照「 擷取 API 酬載並傳送電子郵件」一文中的步驟操作。
- 請記下您建立的整合名稱,或要使用的現有整合名稱,因為後續步驟會用到。
- 在建立 Apigee 組織的 Google Cloud 專案中建立 Google 服務帳戶,然後執行下列操作:
- 將「Application Integration 叫用者」角色
(roles/integrations.applicationIntegrationInvokerRole)指派給服務帳戶。如要瞭解預先定義的 Application Integration 角色,請參閱「預先定義的 IAM 角色」。 - 允許使用者帳戶 (主體) 透過
iam.serviceAccounts.actAs權限將服務帳戶附加至資源。如要瞭解服務帳戶權限,請參閱「服務帳戶驗證的角色 」。
部署 API Proxy 時,您必須提供這個服務帳戶。
- 將「Application Integration 叫用者」角色
- 如要使用不受限制的 Application Integrations,可以付費使用。您可以透過訂閱方案加購 Application Integration 服務。如果您已購買 Application Integration 授權,並想為 Google Cloud 專案或 Apigee 機構啟用授權,請洽詢 Apigee 支援團隊。不過,如要購買 Application Integration 授權,請洽詢 Apigee 銷售團隊。為您啟用 Application Integration 後,請執行下列工作:
- 啟用下列 API:
- Apigee API (apigee.googleapis.com)
- Application Integration API (integrations.googleapis.com)
- Secret Manager API (secretmanager.googleapis.com)
- Connectors API (connectors.googleapis.com)
如要瞭解如何啟用 API,請參閱「啟用服務」。
- 為 Apigee 機構啟用 Integration 和 Connectors 外掛程式。
如要建立新機構,以用於整合,請執行下列指令:
curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" -d '{"name":"${ORG_ID}", "analyticsRegion":"us-west1", "authorized_network":"${NETWORK_ID}", "runtimeType":"CLOUD", "runtimeDatabaseEncryptionKeyName":"${ENCRYPTION_KEY_NAME}", "addonsConfig": {"integrationConfig": {"enabled": true}, "connectorsPlatformConfig":{"enabled":true}}}' "https://apigee.googleapis.com/v1/organizations?parent=projects/${PROJECT_ID}"
如果您使用現有機構,請執行下列指令:
curl -H "Authorization: Bearer $TOKEN" -H "content-type:application/json" "https://apigee.googleapis.com/v1/organizations/${ORG_ID}:setAddons" -XPOST -d '{"addonsConfig":{"integrationConfig":{"enabled":true},"connectorsPlatformConfig":{"enabled":true}}}'
- 使用下列指令,確認外掛程式是否已順利啟用:
curl -H "Authorization: Bearer $TOKEN" -H "content-type:application/json" "https://apigee.googleapis.com/v1/organizations/${ORG_ID}"
執行指令後,畫面應會顯示類似下列內容的訊息:
{ "name": "Test....", "createdAt": "1615483867669", "lastModifiedAt": "1615483873468", …... "addonsConfig": { "integrationConfig": { "enabled": true, "connectorsPlatformConfig": { "enabled": true } } } - 將下列 IAM 角色指派給預設的 Apigee 服務帳戶(
service-PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com):- Application Integration Invoker (
roles/integrations.applicationIntegrationInvokerRole)
如要瞭解如何授予服務帳戶其他角色或權限,請參閱「授予、變更及撤銷存取權」。
- Application Integration Invoker (
- 啟用下列 API:
建立應用程式整合目標 Proxy
如要在 Apigee UI 中建立整合目標 Proxy,請按照下列步驟操作:
透過 Cloud 控制台使用 Apigee
在 Google Cloud 控制台中,前往「Proxy Development」(Proxy 開發) >「API Proxies」(API Proxy) 頁面。
- 在「Google Cloud」窗格中,從專案挑選器選取機構。
- 點選「+建立」。
從顯示的 Proxy 類型中選取「整合目標」。
「建立 Proxy」精靈會啟動。
- 在「Proxy details」設定頁面中,提供下列詳細資料:
- 名稱:輸入 Proxy 名稱。
Proxy 名稱可包含英數字元、破折號和底線。
- 基礎路徑:系統會根據 Proxy 名稱自動填入這個欄位。
基本路徑是傳送 API 要求時所用網址的一部分。Apigee 會使用網址比對連入要求,並將要求轉送至適當的 API Proxy。
- 說明:(選填) 輸入 Proxy 的簡要說明。
例如
Proxy test for Application Integration。 - 整合區域:從清單中選取整合區域。
- 整合目標:從清單中選取整合目標的名稱。請注意,系統會根據所選的整合區域填入整合目標清單。
- 觸發條件:從清單中選取與整合服務相關聯的 API 觸發條件。
- 端點類型:選取「同步」。
- 名稱:輸入 Proxy 名稱。
- 點選「下一步」。
- (選用) 在「Deploy」區域中:
- 選取一或多個「部署環境」。
- 輸入服務帳戶。
- 點選「建立」。
傳統版 UI
- 前往 Apigee UI 並登入。
- 使用 UI 左上角的下拉式選單選取機構。
- 在主要檢視畫面中,按一下「API Proxy」。
或者,您也可以在左側導覽選單中選取「開發」>「API Proxy」。
- 從「環境」下拉式清單中,選取要建立新 API Proxy 的環境。
- 按一下「建立新項目」。
- 從顯示的 Proxy 類型中選取「整合目標」。
系統會啟動「建立 Proxy」精靈。
- 在「Proxy details」設定頁面中,提供下列詳細資料:
- 名稱:輸入 Proxy 名稱。
Proxy 名稱可包含英數字元、破折號和底線。
- 基礎路徑:系統會根據 Proxy 名稱自動填入這個欄位。
基本路徑是傳送 API 要求時所用網址的一部分。Apigee 會使用網址比對連入要求,並將要求轉送至適當的 API Proxy。
- 說明:(選填) 輸入 Proxy 的簡要說明。
例如
Proxy test for Application Integration。 - 整合區域:從下拉式清單中選取整合區域。
- 整合目標:從下拉式清單中選取整合目標的名稱。請注意,系統會根據所選的整合區域填入整合目標清單。
- 觸發條件:從下拉式清單中選取與整合作業相關聯的 API 觸發條件。
- 端點類型:選取「同步」。
- 名稱:輸入 Proxy 名稱。
- 按一下「下一步」。
- 在「Common policies」設定頁面中,保留預設選取項目,然後按一下「Next」。
- 在「Summary」(摘要) 頁面中,按一下「Create」(建立)。
已成功建立整合目標 Proxy。
部署 Proxy
請按照下列步驟部署新建立的 Proxy:
透過 Cloud 控制台使用 Apigee
在 Google Cloud 控制台中,前往「Proxy Development」(Proxy 開發) >「API Proxies」(API Proxy) 頁面。
- 按一下要部署的近期建立的 Proxy。使用者介面預設會顯示「總覽」分頁。
- 按一下 [Deploy] (部署)。
- 輸入下列詳細資料:
- 修訂版本:要部署的 Proxy 修訂版本號碼。
- 環境:要部署 Proxy 的環境。
- 服務帳戶:為 Proxy 建立的服務帳戶。
- 按一下 [Deploy] (部署)。
傳統版 UI
- 在 Apigee UI 中,選取「開發」>「API Proxy」。
使用者介面會顯示 API Proxy 清單及其部署狀態。
- 從「環境」下拉式清單中,選取要部署 API Proxy 的環境。
按一下要部署的近期建立的 Proxy。使用者介面預設會顯示「總覽」頁面。
- 如要部署變更,請先按一下「部署」,顯示「部署」對話方塊。
- 輸入下列資訊:
- 修訂版本:要部署的 Proxy 修訂版本號碼。
- 環境:要部署 Proxy 的環境。
- 服務帳戶:為 Proxy 建立的服務帳戶。
- 按一下 [Deploy] (部署)。
使用者介面會開始部署所選修訂版本。 Proxy 部署作業最多可能需要一分鐘才能完成。
Proxy 部署完成後,「Deployments」(部署) 部分的「Status」(狀態) 欄會顯示綠色圖示,表示已部署 Proxy 的修訂版本 1。
測試整合目標 Proxy
在終端機視窗中執行下列指令,叫用 Proxy 並觸發整合:
curl -v https://YOUR_ENV_GROUP_HOSTNAME/PROXY_NAME
其中 YOUR_ENV_GROUP_HOSTNAME 是環境群組的主機名稱,該群組包含部署 Proxy 的環境。
例如:
curl -v https://my-org-prod.hybrid.e2e.apigeeks.net/my-proxy
如要確認整合作業是否已透過叫用 Proxy 觸發,請按照下列步驟操作:
透過 Cloud 控制台使用 Apigee
前往 Google Cloud 控制台的「Application Integration」(應用程式整合) 頁面。
- 在導覽選單中,按一下「記錄」。系統會顯示「Execution Logs」(執行記錄) 頁面,列出預設區域中整合作業產生的執行記錄。
- 確認觸發的整合服務有執行記錄。
- 如要查看記錄詳細資料,請按一下「展開」箭頭 ,展開整合詳細資料。
傳統版 UI
- 開啟 Apigee UI。
- 依序點選「Develop」>「Integrations」。
- 搜尋或選取上述步驟中建立的整合項目名稱,然後按一下整合項目名稱。
- 按一下「記錄」。
- 確認已針對觸發的整合作業建立執行記錄。如要查看記錄詳細資料,請按一下資料列,展開執行作業詳細資料。
更新 Proxy 要求酬載 (選用)
請按照下列步驟更新 Proxy 要求酬載:
透過 Cloud 控制台使用 Apigee
在 Google Cloud 控制台中,前往「Proxy Development」(Proxy 開發)>「API Proxies」(API Proxy) 頁面。
按一下要更新的近期建立的 Proxy。
根據預設,Proxy 編輯器會顯示該 Proxy 的「總覽」分頁。
- 點選「Develop」分頁標籤。
- 在「Navigator」窗格中,選取「Policies」標題下方的「Set Integration Request」。
取消註解
<Parameters>區塊,然後輸入參數詳細資料。如要指定個別參數,請使用
<Parameter>元素。如要指定參數陣列,請使用<ParameterArray>元素。- 按一下 [儲存]。
傳統版 UI
- 在 Apigee UI 中,選取左側導覽選單中的「開發」>「API Proxy」。
- 按一下最近建立的 Proxy。
根據預設,Proxy 編輯器會顯示該 Proxy 的「總覽」分頁。
- 點選「Develop」分頁標籤。
- 在「Navigator」窗格中,選取「Policies」標題下方的「Set Integration Request」。
- 取消註解
<Parameters>區塊,然後輸入參數詳細資料。如要指定個別參數,請使用
<Parameter>元素。如要指定參數陣列,請使用<ParameterArray>元素。 - 按一下 [儲存]。
後續步驟
探索整合設計工具版面配置,並瞭解「所有概念」中說明的各種整合概念。