共用方式為


服務連接器內部

服務連接器是 Azure 延伸模組資源提供者,其設計目的是提供簡單的方法來建立和管理 Azure 服務之間的連線。

服務連接器提供下列功能:

  • 讓您透過單一 Azure CLI 命令或使用 Azure 入口網站執行少數步驟,將 Azure 服務連線在一起。
  • 支援越來越多的資料庫、儲存體、即時服務、狀態和祕密存放區,這些項目會與雲端原生應用程式搭配使用。
  • 為您設定網路設定、驗證,以及管理連線環境變數或屬性。
  • 驗證連線並提供修正錯誤連線的建議。

服務連線概觀

服務連線的概念是 Service Connector 資源模型中的重要概念。 服務連線代表兩個服務之間連結的抽象概念。 服務連線具有下列屬性:

屬性 說明
連線名稱 服務連接的唯一名稱。
來源服務類型 來源服務是您可以連線到目標服務的服務。 它們通常是 Azure 計算服務,包括 Azure App 服務、Azure Container Apps、Azure Functions、Azure Kubernetes Service (AKS) 和 Azure Spring Apps。
目標服務類型 目標服務是計算服務所連線的支援服務或相依性服務。 服務連接器支援各種目標服務類型,包括主要資料庫、儲存體、即時服務、狀態和祕密存放區。
用戶端類型 用戶端類型是指您的計算執行階段堆疊、開發架構或接受連線環境變數或屬性特定格式的特定用戶端程式庫類型。
驗證類型 用於服務連線的驗證類型。 可以是祕密/連接字串、受控識別或服務主體。

來源服務和目標服務支援多個同時服務連線,這表示您可以將每個資源連線到多個資源。

服務連接器管理來源執行個體屬性中的連線。 直接在 Azure 入口網站中開啟來源服務執行個體,或使用來源服務的 CLI 命令,來建立、取得、更新和刪除連線。

連線可以跨訂用帳戶或租用戶進行,這表示來源和目標服務可以屬於不同的訂用帳戶或租用戶。 當您建立新的服務連線時,連線資源預設會在與計算服務執行個體相同的區域中建立。

服務連線建立和更新

Service Connector 會在建立或更新服務連線時執行多個工作,包括:

  • 設定網路和防火牆設定。 深入瞭解 網路解決方案。

  • 設定線上資訊。 深入瞭解 聯機組態。

  • 設定驗證資訊。 Service Connector 支援來源服務和目標服務之間的所有可用驗證類型。

    • 系統指派的受控識別。 如果尚未啟用,Service Connector 會在來源服務上啟用系統指派的受控識別,然後將目標服務的 RBAC 角色授與受控識別。 用戶可以指定要授與的角色。
    • 使用者指派的受控識別。 如果尚未啟用,Service Connector 會在來源服務上啟用使用者指派的受控識別,然後將目標服務的 RBAC 角色授與受控識別。 用戶可以指定要授與的角色。
    • 連接字串。 服務連接器會從記憶體、Redis 快取等目標服務擷取 連接字串,或根據使用者輸入建構 連接字串,例如適用於 SQL 的 Azure 資料庫、PostgreSQL 等。
    • 服務主體。 服務連接器會將目標服務的 RBAC 角色授與受控識別。 用戶可以指定要授與的角色。

    Service Connector 會將對應的驗證組態儲存至來源服務,例如儲存AZURE_CLIENT_ID、AZURE_TENANT_ID,AZURE_STORAGEACCOUNT_ENDPOINT記憶體,以及使用者指派的受控識別驗證類型。

  • 發生失敗時建立或更新連線回復

如果此程式期間的步驟失敗,Service Connector 會復原所有先前的步驟,以保留來源和目標實例中的初始設定。

資源提供者

Microsoft.ServiceLinker 是 Service Connector 資源提供者的名稱。

當使用者在 Azure 入口網站 中開啟 [Service Connector] 索引標籤時,ServiceLinker 資源提供者會自動在使用者的作用中訂用帳戶中註冊。 產生註冊的用戶會列為註冊事件的啟動器。

服務連接器可讓使用者跨訂用帳戶連接服務。 當使用者建立另一個訂用帳戶中註冊之目標服務的連線時,Service Linker 也會在目標服務的訂用帳戶中註冊。 當用戶在最後建立連線之前選取 [ 檢閱 + 建立 ] 索引卷標時,就會發生此註冊。

聯機組態

聯機組態是在來源服務中設定。

在 Azure 入口網站 中,開啟原始碼服務並流覽至 [服務連接器]。 展開每個連線並檢視聯機組態。

顯示服務連線詳細數據的 Azure 入口網站 螢幕快照。

在 CLI 中 list-configuration ,使用 命令來取得聯機組態。

az webapp connection list-configuration --resource-group <source-service-resource-group> --name <source-service-name> --connection <connection-name>
az spring connection list-configuration --resource-group <source-service-resource-group> --name <source-service-name> --connection <connection-name>
az containerapp connection list-configuration --resource-group <source-service-resource-group> --name <source-service-name> --connection <connection-name>

設定命名慣例

服務連接器會在建立連線時設定聯機組態。 環境變數索引鍵/值組會根據您的用戶端類型和驗證類型來決定。 例如,搭配受控識別使用 Azure SDK 需要用戶端識別碼、客戶端密碼等。使用 JDBC 驅動程式需要資料庫 連接字串。 請遵循下列慣例來命名組態:

  • Spring Boot 用戶端:每個目標服務的 Spring Boot 連結庫都有自己的命名慣例。 例如,MySQL 連線設定會是 spring.datasource.urlspring.datasource.usernamespring.datasource.password。 Kafka 連線設定會是 spring.kafka.properties.bootstrap.servers

  • 其他用戶端:

    • 第一個聯機組態的索引鍵名稱會使用 格式 <Cloud>_<Type>_<Name>。 例如,AZURE_STORAGEBLOB_RESOURCEENDPOINTCONFLUENTCLOUD_KAFKA_BOOTSTRAPSERVER
    • 針對相同類型的目標資源,第二個聯機組態的索引鍵名稱會使用 格式 <Cloud>_<Type>_<Connection Name>_<Name>。 例如,AZURE_STORAGEBLOB_CONN2_RESOURCEENDPOINTCONFLUENTCLOUD_KAFKA_CONN2_BOOTSTRAPSERVER

服務網路解決方案

Service Connector 提供三個網路解決方案,供使用者在建立連線時從中選擇。 這些解決方案旨在促進資源之間的安全且有效率的通訊。

  1. 防火牆:此解決方案允許透過公用網路進行連線,並使用公用IP位址來計算資源存取目標資源。 選取此選項時,Service Connector 會驗證目標資源的防火牆設定,並新增規則以允許來自來源資源的公用IP位址連線。 如果資源的防火牆支持允許所有 Azure 資源存取,Service Connector 會啟用此設定。 不過,如果目標資源預設會拒絕所有公用網路流量,Service Connector 不會修改此設定。 在此情況下,您應該選擇另一個選項或手動更新網路設定,然後再試一次。

  2. 服務端點:此解決方案可讓計算資源透過虛擬網路連線到目標資源,確保連線流量不會通過公用網路。 只有在符合特定先決條件時,才能使用:

    • 計算資源必須啟用虛擬網路整合。 針對 Azure App 服務,它可以在其網路設定中設定;針對 Azure Spring Apps,使用者在資源建立階段必須設定 虛擬網絡 插入。
    • 目標服務必須支援服務端點。 如需支援的服務清單,請參閱 虛擬網絡 服務端點

    選取此選項時,Service Connector 會將虛擬網路中計算資源的私人 IP 位址新增至目標資源的 虛擬網絡 規則,並在來源資源的子網組態中啟用服務端點。 如果用戶沒有足夠的許可權,或資源的 SKU 或區域不支援服務端點,連線建立就會失敗。

  3. 私人端點:此解決方案是透過虛擬網路連線資源的建議方式,只有在符合特定先決條件時才能使用:

  • 計算資源必須啟用虛擬網路整合。 針對 Azure App 服務,它可以在其網路設定中設定;針對 Azure Spring Apps,用戶必須在資源建立階段設定 VNet 插入。

  • 目標服務必須支援私人端點。 如需支持的服務清單,請參閱 Private-link 資源

    選取此選項時,Service Connector 不會在計算或目標資源中執行任何其他組態。 相反地,它會驗證有效的私人端點是否存在,並在找不到時失敗連線。 為了方便起見,用戶可以在建立連線時,選取 Azure 入口網站 中的 [新增私人端點] 複選框。 使用時,Service Connector 會自動依適當的順序為私人端點建立所有相關資源,以簡化連線建立程式。

服務連線驗證

驗證連線時,服務連接器會檢查下列元素:

  • 來源和目標資源存在。
  • 來源:已註冊正確的連線資訊。
  • 目標:已註冊正確的網路和防火牆設定。
  • 來源和目標資源:註冊正確的驗證資訊。

線上刪除

刪除服務連線時,也會刪除連線資訊。

下一步

請參閱下列概念文章,以深入瞭解 Service Connector。