Можно ли обновить Azure Настройки веб-приложения с помощью LinqPad? - PullRequest
0 голосов
/ 19 февраля 2020

Интересно, можно ли обновить Azure Настройки конфигурации веб-приложения с помощью приложения LinqPad? Чтобы узнать, где в веб-приложении необходимо обновить, см. Изображение ниже.

enter image description here

Я знаю, что можно обновить настройки сети с помощью LinqPad (коллега создал сценарий). У меня есть учетные данные для входа (Microsoft.Rest. Azure .Authentication.ApplicationTokenProvider) и идентификатор подписки (Microsoft. Azure .Management.WebSites.WebSiteManagementClient). Тем не менее, когда я пытаюсь использовать WebApps (из сборки / пространства имен «Microsoft. Azure .Management.WebSites»), я не уверен, что мне следует использовать или вообще возможно ли это сделать.

1 Ответ

1 голос
/ 28 февраля 2020

Да, это возможно. Вы можете создать Принцип обслуживания (используйте azure cli или azure portal ) для аутентификации, а затем установите этот пакет Microsoft. Azure .Management.Fluent .

Затем используйте код ниже для добавления или обновления настроек приложения на портале azure:

public static void UpdateSetting(string key, string value)
{
    string tenantId = "xx";
    string clientSecret = "xx";
    string clientId = "xxx";
    string subscriptionId = "xx";

    //resource group name
    string rg_name = "xx";

    //azure web app name
    string app_name = "xxx";

    var azureCredentials = new AzureCredentials(new
      ServicePrincipalLoginInformation
    {
        ClientId = clientId,
        ClientSecret = clientSecret
    }, tenantId, AzureEnvironment.AzureGlobalCloud);


    var myazure = Azure
        .Configure()
        .Authenticate(azureCredentials)
        .WithSubscription(subscriptionId);

    var webapp = myazure.WebApps.GetByResourceGroup(rg_name, app_name);
    webapp.Update()
        .WithAppSetting(key, value)
        .Apply();                                                
}
...