Краткое руководство. Создание ресурсов Служб коммуникации и управление ими

Приступите к работе со Службами коммуникации Azure, подготовив первый ресурс Служб коммуникации Azure. Ресурсы служб коммуникации можно подготовить с помощью портал Azure или с помощью пакета SDK для управления .NET. Пакет SDK для управления и портал Azure позволяют создавать, настраивать, обновлять и удалять ресурсы и интерфейсы с помощью новой службы развертывания и управления: Azure Resource Manager. Все функции, доступные в пакетах SDK, доступны в портал Azure.

Предупреждение

Обратите внимание, что невозможно создать группу ресурсов одновременно с ресурсом для Службы коммуникации Azure. Перед созданием ресурса необходимо сначала создать группу ресурсов.

Необходимые компоненты

Если вы планируете использовать номера телефонов, вы не можете использовать бесплатную пробную учетную запись. Убедитесь, что ваша подписка соответствует всем требованиям, если вы планируете приобрести номера телефонов перед созданием ресурса.

Создание ресурса Служб коммуникации Azure

Чтобы создать ресурс Служб коммуникации Azure, сначала войдите на портал Azure. Выберите + Создать ресурс в левом верхнем углу страницы.

Снимок экрана: кнопка

Введите коммуникации в поле Поиск в Marketplace или в строке поиска в верхней части портала.

Снимок экрана, на котором показан поиск Служб коммуникации в строке поиска.

В результатах выберите Службы коммуникации, а затем нажмите Создать.

Снимок экрана с панелью

Теперь можно настроить ресурс Служб коммуникации. На первой странице процесса создания необходимо указать следующее:

  • Подписка
  • Группа ресурсов (можно создать новую или выбрать существующую группу ресурсов)
  • Имя ресурса Служб коммуникации
  • География, связанная с ресурсом

На следующем шаге можно назначить ресурсу теги. Теги можно использовать для упорядочивания ресурсов Azure. Дополнительные сведения о тегах см. в статье "Использование тегов для организации ресурсов Azure и иерархии управления".

Наконец, можно проверить конфигурацию и создать ресурс. Развертывание занимает несколько минут.

Управление ресурсом Служб коммуникации

Чтобы управлять ресурсом Служб коммуникации, войдите в портал Azure и найдите и выберите Службы коммуникации Azure.

На странице Службы коммуникации выберите имя ресурса.

На странице Обзор ресурса можно выполнять базовые задачи управления: просмотр, завершение работы, запуск, перезагрузку и удаление. Дополнительные параметры конфигурации см. в меню слева страницы ресурсов.

Необходимые компоненты

Если вы планируете использовать номера телефонов, вы не можете использовать бесплатную пробную учетную запись. Убедитесь, что ваша подписка соответствует всем требованиям, если вы планируете приобрести номера телефонов перед созданием ресурса.

Создание ресурса Служб коммуникации Azure

Чтобы создать ресурс Служб коммуникации Azure, войдите в Azure CLI. Вы можете выполнить команду из az login терминала и указать свои учетные данные. Выполните следующую команду для создания рабочей области.

az communication create --name "<acsResourceName>" --location "Global" --data-location "United States" --resource-group "<resourceGroup>"

Если вы хотите выбрать определенную подписку, можно также указать флаг и указать --subscription идентификатор подписки.

az communication create --name "<acsResourceName>" --location "Global" --data-location "United States" --resource-group "<resourceGroup>" --subscription "<subscriptionId>"

Теперь можно настроить ресурс Служб коммуникации с помощью следующих параметров:

  • Группа ресурсов
  • Имя ресурса Служб коммуникации
  • География, связанная с ресурсом

На следующем шаге можно назначить ресурсу теги. Теги можно использовать для упорядочивания ресурсов Azure. Дополнительные сведения о тегах см. в статье "Использование тегов для организации ресурсов Azure и иерархии управления".

Управление ресурсом Служб коммуникации

Чтобы добавить теги в ресурс Служб коммуникации, выполните следующие команды: Вы также можете ориентироваться на конкретную подписку.

az communication update --name "<communicationName>" --tags newTag="newVal1" --resource-group "<resourceGroup>"

az communication update --name "<communicationName>" --tags newTag="newVal2" --resource-group "<resourceGroup>" --subscription "<subscriptionId>"

az communication show --name "<communicationName>" --resource-group "<resourceGroup>"

az communication show --name "<communicationName>" --resource-group "<resourceGroup>" --subscription "<subscriptionId>"

Дополнительные сведения о других командах см. в azure Communication CLI.

Необходимые компоненты

Если вы планируете использовать номера телефонов, вы не можете использовать бесплатную пробную учетную запись. Убедитесь, что ваша подписка соответствует всем требованиям, если вы планируете приобрести номера телефонов перед созданием ресурса.

Установка пакета SDK

Во-первых, добавьте пакет SDK для управления Служб коммуникации в проект C#:

using Azure.ResourceManager.Communication;

ИД подписки

Необходимо знать идентификатор подписки Azure. Его можно получить на портале:

  1. Войдите в учетную запись в портал Azure.
  2. На левой боковой панели выберите "Подписки".
  3. Выберите подписку, которую нужно использовать.
  4. Щелкните Обзор.
  5. Выберите идентификатор подписки.

Примеры, приведенные в этом кратком руководстве, необходимы для хранения идентификатора подписки в переменной среды с именем AZURE_SUBSCRIPTION_ID.

Проверка подлинности

Для взаимодействия со Службами коммуникации Azure необходимо сначала пройти проверку подлинности в Azure. Обычно для этого можно использовать удостоверение субъекта-службы.

Вариант 1. Управляемое удостоверение

Если код выполняется в качестве службы в Azure, самый простой способ пройти проверку подлинности — получить управляемое удостоверение Azure. Дополнительные сведения см. в разделе:

Управляемое удостоверение, назначаемое системой

using Azure.Identity;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Communication.Models;
using System;
...
var subscriptionId = "AZURE_SUBSCRIPTION_ID";
var acsClient = new CommunicationManagementClient(subscriptionId, new ManagedIdentityCredential());

Управляемое удостоверение, назначаемое пользователем

ClientId созданного управляемого удостоверения должен быть явно передан ManagedIdentityCredential.

using Azure.Identity;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Communication.Models;
using System;
...
var subscriptionId = "AZURE_SUBSCRIPTION_ID";
var managedIdentityCredential = new ManagedIdentityCredential("AZURE_CLIENT_ID");
var acsClient = new CommunicationManagementClient(subscriptionId, managedIdentityCredential);

Вариант 2. Субъект-служба

Вместо применения управляемого удостоверения проверку подлинности в Azure можно пройти, используя субъект-службу, которым вы самостоятельно управляете. Дополнительные сведения см. в статье о создании субъекта-службы и управлении ими в идентификаторе Microsoft Entra.

После создания субъекта-службы необходимо собрать следующие сведения об этом из портал Azure:

  • Идентификатор клиента
  • Секрет клиента
  • Идентификатор клиента

Сохраните эти значения в виде переменных среды с именем AZURE_CLIENT_ID, AZURE_CLIENT_SECRETи AZURE_TENANT_IDсоответственно. Затем вы можете создать клиент управления Служб коммуникации следующим образом.

using Azure.Identity;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Communication.Models;
using System;
...
var subscriptionId = Environment.GetEnvironmentVariable("AZURE_SUBSCRIPTION_ID");
var acsClient = new CommunicationManagementClient(subscriptionId, new EnvironmentCredential());

Вариант 3. Удостоверение пользователя

Если вместо использования удостоверения службы вы хотите вызвать Azure от имени интерактивного пользователя, можно применить следующий код и создать клиент управления Служб коммуникации Azure. Откроется окно браузера для запроса пользователя на получение учетных данных MSA или Microsoft Entra.

using Azure.Identity;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Communication.Models;
using System;
...
var subscriptionId = Environment.GetEnvironmentVariable("AZURE_SUBSCRIPTION_ID");
var communicationServiceClient = new CommunicationManagementClient(subscriptionId, new InteractiveBrowserCredential());

Управление ресурсами Служб коммуникации

Взаимодействие с ресурсами Azure

После проверки подлинности можно использовать клиент управления для вызова API.

Для каждого из следующих примеров мы назначаем ресурсы служб коммуникации существующей группе ресурсов.

Если вам необходимо создать группу ресурсов, можете использовать портал Azure или пакет SDK для Azure Resource Manager.

Создание ресурсов Служб коммуникации Azure и управление ими

Экземпляр клиента пакета SDK для управления службами коммуникации (Azure.ResourceManager.Communication.CommunicationManagementClient) можно использовать для выполнения операций с ресурсами служб коммуникации.

создать ресурс Служб коммуникации;

При создании ресурса Служб коммуникации укажите имя группы ресурсов и имя ресурса. Свойство Location всегда globalимеет значение, и во время общедоступной предварительной DataLocation версии значение должно быть UnitedStates.

var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
var resource = new CommunicationServiceResource { Location = "Global", DataLocation = "UnitedStates"  };
var operation = await acsClient.CommunicationService.StartCreateOrUpdateAsync(resourceGroupName, resourceName, resource);
await operation.WaitForCompletionAsync();

Обновление ресурса Служб коммуникации

...
var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
var resource = new CommunicationServiceResource { Location = "Global", DataLocation = "UnitedStates" };
resource.Tags.Add("environment","test");
resource.Tags.Add("department","tech");
// Use existing resource name and new resource object
var operation = await acsClient.CommunicationService.StartCreateOrUpdateAsync(resourceGroupName, resourceName, resource);
await operation.WaitForCompletionAsync();

Список всех ресурсов Служб коммуникации

var resources = acsClient.CommunicationService.ListBySubscription();
foreach (var resource in resources)
{
    Console.WriteLine(resource.Name);
}

Удаление ресурса Служб коммуникации

var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
await acsClient.CommunicationService.StartDeleteAsync(resourceGroupName, resourceName);

Управление ключами и строками подключения

Каждый ресурс Служб коммуникации имеет пару ключей доступа и соответствующие строки подключения. Эти ключи можно получить с помощью пакета SDK для управления, а затем предоставить им доступ к другим пакетам SDK служб коммуникации для проверки подлинности в Службы коммуникации Azure.

Получение ключей доступа для ресурса Служб коммуникации

var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
var keys = await acsClient.CommunicationService.ListKeysAsync(resourceGroupName, resourceName);

Console.WriteLine(keys.Value.PrimaryConnectionString);
Console.WriteLine(keys.Value.SecondaryConnectionString);

Повторное создание ключа доступа для ресурса Служб коммуникации

var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
var keyParams = new RegenerateKeyParameters { KeyType = KeyType.Primary };
var keys = await acsClient.CommunicationService.RegenerateKeyAsync(resourceGroupName, resourceName, keyParams);

Console.WriteLine(keys.Value.PrimaryKey);

Необходимые компоненты

Если вы планируете использовать номера телефонов, вы не можете использовать бесплатную пробную учетную запись. Убедитесь, что ваша подписка соответствует всем требованиям, если вы планируете приобрести номера телефонов перед созданием ресурса.

Создание ресурса Служб коммуникации Azure

Чтобы создать ресурс Служб коммуникации Azure, войдите в Azure CLI. Ресурс можно создать через терминал с помощью Connect-AzAccount команды и предоставить учетные данные.

Сначала установите модуль Az.Communication Службы коммуникации Azure с помощью следующей команды.

PS C:\> Install-Module Az.Communication

Выполните следующую команду для создания рабочей области.

PS C:\> New-AzCommunicationService -ResourceGroupName ContosoResourceProvider1 -Name ContosoAcsResource1 -DataLocation UnitedStates -Location Global

Если вы хотите выбрать конкретную подписку, можно также указать флаг --subscription и указать идентификатор подписки.

PS C:\> New-AzCommunicationService -ResourceGroupName ContosoResourceProvider1 -Name ContosoAcsResource1 -DataLocation UnitedStates -Location Global -SubscriptionId SubscriptionID

Теперь можно настроить ресурс Служб коммуникации с помощью следующих параметров:

  • Группа ресурсов
  • Имя ресурса Служб коммуникации
  • География, связанная с ресурсом

На следующем шаге можно назначить ресурсу теги. Теги можно использовать для упорядочивания ресурсов Azure. Дополнительные сведения см. в статье Использование тегов для упорядочивания ресурсов Azure и создания иерархии управления.

Управление ресурсом Служб коммуникации

Чтобы добавить теги в ресурс Служб коммуникации, выполните следующие команды: Вы также можете использовать определенную подписку.

PS C:\> Update-AzCommunicationService -Name ContosoAcsResource1 -ResourceGroupName ContosoResourceProvider1 -Tag @{ExampleKey1="ExampleValue1"}

PS C:\> Update-AzCommunicationService -Name ContosoAcsResource1 -ResourceGroupName ContosoResourceProvider1 -Tag @{ExampleKey1="ExampleValue1"} -SubscriptionId SubscriptionID

Чтобы вывести список всех Службы коммуникации Azure ресурсов для данной подписки, используйте следующую команду:

PS C:\> Get-AzCommunicationService -SubscriptionId SubscriptionID

Чтобы получить список всех сведений об определенном ресурсе, используйте следующую команду:

PS C:\> Get-AzCommunicationService -Name ContosoAcsResource1 -ResourceGroupName ContosoResourceProvider1

Доступ к строкам подключения и конечным точкам службы

Строки подключения позволяют пакетам SDK служб коммуникации подключаться и проходить проверку подлинности в Azure. Вы можете получить доступ к строкам подключения Служб коммуникации Azure и конечным точкам службы с портала Azure или же программным способом с помощью API Azure Resource Manager.

Перейдя к ресурсу Служб коммуникации, выберите Ключи в меню навигации и скопируйте значения строки подключения или конечной точки, чтобы использовать их в пакетах SDK Служб коммуникации. У вас есть доступ к первичным и вторичным ключам. Это может быть полезно, если вы хотите предоставить временный доступ к ресурсам служб коммуникации в сторонней или промежуточной среде.

Снимок экрана со страницей

Доступ к строка подключения и конечным точкам служб с помощью Azure CLI

Вы также можете получить доступ к основным сведениям, например информации о группе ресурсов или ключах для определенного ресурса, с помощью Azure CLI.

Установите Azure CLI и выполните следующую команду для входа. Для подключения к учетной записи Azure необходимо указать свои учетные данные.

az login

Теперь у вас есть доступ к главной информации о ресурсах.

az communication list --resource-group "<resourceGroup>"

az communication list-key --name "<acsResourceName>" --resource-group "<resourceGroup>"

Если вы хотите выбрать определенную подписку, можно также указать флаг и указать --subscription идентификатор подписки.

az communication list --resource-group  "<resourceGroup>"  --subscription "<subscriptionId>"

az communication list-key --name "<acsResourceName>" --resource-group "<resourceGroup>" --subscription "<subscriptionId>"

Сохранение строки подключения

Пакеты SDK Служб коммуникации используют строки подключения для авторизации запросов, выполняемых в этих службах. Есть несколько вариантов для хранения строки подключения.

  • Приложение, работающее на настольном компьютере или на устройстве, может хранить строку подключения в файле app.config или web.config. Добавьте строку подключения в раздел AppSettings в этих файлах.
  • Приложение, работающее в Службе приложений Azure, может хранить строку подключения в параметрах приложения Службы приложений Azure. На портале добавьте строку подключения в раздел Строки подключения на вкладке "Параметры приложения".
  • Строку подключения можно хранить в Azure Key Vault. Вы можете безопасно управлять строка подключения.
  • Если приложение выполняется локально, может потребоваться сохранить строку подключения в переменной среды.

Сохранение строки подключения в переменной среды

Чтобы настроить переменную среды, откройте окно консоли и выберите операционную систему на следующих вкладках. Замените <yourconnectionstring> фактической строкой подключения.

Откройте окно консоли и введите следующую команду:

setx COMMUNICATION_SERVICES_CONNECTION_STRING "<yourConnectionString>"

После добавления переменной среды может потребоваться перезапустить все запущенные программы, которые считывают переменную среды, включая окно консоли. Например, если вы используете Visual Studio в качестве редактора, перезапустите Visual Studio перед запуском примера.

Очистка ресурсов

Если вы хотите отменить и удалить подписку на Службы коммуникации, можно удалить ресурс или группу ресурсов. Чтобы удалить ресурс связи, выполните следующую команду.

az communication delete --name "acsResourceName" --resource-group "resourceGroup"

При удалении группы ресурсов также удаляются все другие ресурсы, связанные с ним.

Если у вас есть номера телефонов, назначенные ресурсу при удалении ресурсов, номера телефонов автоматически освобождаются из ресурса одновременно.

Примечание.

Удаление ресурсов не является постоянным , а данные, включая фильтры сетки событий, номера телефонов или другие данные, привязанные к ресурсу, можно восстановить при удалении ресурса.

Следующие шаги

Из этого руководства вы узнали, как выполнить следующие действия:

  • создать ресурс Служб коммуникации;
  • настроить географию и теги ресурсов;
  • получить доступ к ключам для этого ресурса.
  • Удаление ресурса