使用 Azure CLI 建立 Azure 通知中樞

Azure 通知中樞提供易於使用且相應放大的推播引擎,可讓您從任何後端 (雲端或內部部署) 傳送通知到任何平台 (iOS、Android、Windows、Kindle、Baidu 等)。 如需該服務的詳細資訊,請參閱什麼是 Azure 通知中樞?

在本快速入門中,您會使用 Azure CLI 建立通知中樞。 第一節會提供讓您建立通知中樞命名空間的相關步驟。 第二節會提供相關步驟讓您在現有命名空間中建立通知中樞。 您也會了解如何建立自訂存取原則。

如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶

必要條件

重要

通知中樞需要 Azure CLI 的 2.0.67 版或更新版本。 執行 az version 以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行 az upgrade

建立資源群組

Azure 通知中樞與所有 Azure 資源一樣都必須部署到資源群組中。 資源群組可讓您組織和管理相關的 Azure 資源。 若要深入了解資源群組,請參閱什麼是 Azure Resource Manager

針對此快速入門,請使用下列 az group create 命令,在 eastus 位置中建立一個名為 spnhubrg 的資源群組。

az group create --name spnhubrg --location eastus

建立通知中樞命名空間

  1. 建立通知中樞的命名空間。

    命名空間會包含一或多個中樞,此名稱在所有 Azure 訂用帳戶中必須是唯一的,並且長度至少為 6 個字元。 若要檢查名稱的可用性,請使用 az notification-hub namespace check-availability 命令。

    az notification-hub namespace check-availability --name spnhubns
    

    Azure CLI 會顯示下列主控台輸出,以回應您的可用性要求:

    {
    "id": "/subscriptions/yourSubscriptionID/providers/Microsoft.NotificationHubs/checkNamespaceAvailability",
    "isAvailable": true,
    "location": null,
    "name": "spnhubns",
    "properties": false,
    "sku": null,
    "tags": null,
    "type": "Microsoft.NotificationHubs/namespaces/checkNamespaceAvailability"
    }
    

    請注意 Azure CLI 回應中的第二行,"isAvailable": true。 若無法使用您為命名空間所指定的名稱,則此行將會顯示為 false。 一旦您確認名稱的可用性之後,請執行 az notification-hub namespace create 命令來建立您的命名空間。

    az notification-hub namespace create --resource-group spnhubrg --name spnhubns  --location eastus --sku Free
    

    若您提供給 az notification-hub namespace create 命令的 --name 無法使用,或不符合 Azure 資源的命名規則與限制,Azure CLI 會以下列主控台輸出回應:

    #the name is not available
    The specified name is not available. For more information visit https://aka.ms/eventhubsarmexceptions.
    
    #the name is invalid
    The specified service namespace is invalid.
    

    若您嘗試的第一個名字不成功,請為新的命名空間選取不同的名稱,然後再次執行 az notification-hub namespace create 命令。

    注意

    在此步驟中,您必須在您從本快速入門複製的每個 Azure CLI 命令中,取代 --namespace 參數的值。

  2. 取得命名空間的清單。

    若要查看新命名空間的詳細資料,請使用 az notification-hub namespace list 命令。 若您想要查看訂用帳戶的所有命名空間,可選擇 --resource-group 參數。

    az notification-hub namespace list --resource-group spnhubrg
    

建立通知中樞

  1. 建立您的第一個通知中樞。

    現在您可以在新的命名空間中,建立一或多個通知中樞。 執行 az notification-hub create 命令來建立通知中樞。

    az notification-hub create --resource-group spnhubrg --namespace-name spnhubns --name spfcmtutorial1nhub --location eastus
    
  2. 建立第二個通知中樞。

    您可以在單一命名空間中建立多個通知中樞。 若要在相同的命名空間中建立第二個通知中樞,請使用不同的中樞名稱再次執行 az notification-hub create 命令。

    az notification-hub create --resource-group spnhubrg --namespace-name spnhubns --name mysecondnhub --location eastus 
    
  3. 取得通知中樞的清單。

    Azure CLI 會傳回每個已執行命令的成功或錯誤訊息;然而,也保證可以查詢通知中樞清單。 az notification-hub list 命令是針對這個用途所設計。

    az notification-hub list --resource-group spnhubrg --namespace-name spnhubns --output table
    

使用存取原則

  1. Azure 通知中樞透過使用存取原則,使用共用存取簽章安全性。 當您建立通知中樞時,會自動建立兩個原則。 必須有這些原則的連接字串,才能設定推播通知。 az notification-hub authorization-rule list 命令會提供原則名稱與其各自資源群組的清單。

    az notification-hub authorization-rule list --resource-group spnhubrg --namespace-name spnhubns --notification-hub-name spfcmtutorial1nhub --output table
    

    重要

    請勿在應用程式中使用 DefaultFullSharedAccessSignature 原則。 此原則只能在後端使用。 用戶端應用程式中應只使用 Listen 存取原則。

  2. 若您想要使用有意義的名稱建立其他授權規則,可以使用 az notification-hub authorization-rule create 命令來建立及自訂您自己的存取原則。 --rights 參數是您想要指派的權限清單 (以空格分隔)。

    az notification-hub authorization-rule create --resource-group spnhubrg --namespace-name spnhubns --notification-hub-name spfcmtutorial1nhub --name spnhub1key --rights Listen Manage Send
    
  3. 每個存取原則都有兩組索引鍵和連接字串。 您稍後需要用到這些連接字串來設定通知中樞。 若要列出通知中樞存取原則的索引鍵和連接字串,請執行 az notification-hub authorization-rule list-keys 命令。

    # query the keys and connection strings for DefaultListenSharedAccessSignature
    az notification-hub authorization-rule list-keys --resource-group spnhubrg --namespace-name spnhubns --notification-hub-name spfcmtutorial1nhub --name DefaultListenSharedAccessSignature --output table
    
    # query the keys and connection strings for a custom policy
    az notification-hub authorization-rule list-keys --resource-group spnhubrg --namespace-name spnhubns --notification-hub-name spfcmtutorial1nhub --name spnhub1key --output table
    

    注意

    通知中樞命名空間通知中樞有個別的存取原則。 查詢索引鍵和連接字串時,請確定您使用的是正確的 Azure CLI 參考。

清除資源

若不再需要,請使用 az group delete 命令來移除資源群組和所有相關資源:

az group delete --name spnhubrg

後續步驟