Biblioteca de clientes do Gerenciamento Automatizado do Azure para JavaScript – versão 1.0.2

Esse pacote contém um SDK isomórfico (executado em Node.js e em navegadores) para o cliente do Gerenciamento Automatizado do Azure.

Cliente de Gerenciamento Automatizado

Código-fonte | Pacote (NPM) | Documentação | de referência da APIAmostras

Introdução

Ambientes com suporte no momento

Confira nossa política de suporte para mais detalhes.

Pré-requisitos

Instalar o pacote @azure/arm-automanage

Instale a biblioteca de clientes do Gerenciamento Automatizado do Azure para JavaScript com npm:

npm install @azure/arm-automanage

Criar e autenticar um AutomanageClient

Para criar um objeto cliente para acessar a API de Gerenciamento Automatizado do Azure, você precisará do endpoint recurso de Gerenciamento Automatizado do Azure e de um credential. O cliente do Gerenciamento Automatizado do Azure pode usar as credenciais do Azure Active Directory para autenticar. Você pode encontrar o ponto de extremidade do recurso gerenciamento automatizado do Azure no Portal do Azure.

Você pode autenticar com o Azure Active Directory usando uma credencial da biblioteca de @azure/identidade ou um Token do AAD existente.

Para usar o provedor DefaultAzureCredential mostrado abaixo ou outros provedores de credenciais fornecidos com o SDK do Azure, instale o @azure/identity pacote:

npm install @azure/identity

Você também precisará registrar um novo aplicativo do AAD e conceder acesso ao Gerenciamento Automatizado do Azure atribuindo a função adequada à sua entidade de serviço (observação: funções como "Owner" não concederão as permissões necessárias). Defina os valores da ID do cliente, da ID do locatário e do segredo do cliente do aplicativo AAD como variáveis de ambiente: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET.

Para obter mais informações sobre como criar um aplicativo Azure AD, confira este guia.

const { AutomanageClient } = require("@azure/arm-automanage");
const { DefaultAzureCredential } = require("@azure/identity");
// For client-side applications running in the browser, use InteractiveBrowserCredential instead of DefaultAzureCredential. See https://aka.ms/azsdk/js/identity/examples for more details.

const subscriptionId = "00000000-0000-0000-0000-000000000000";
const client = new AutomanageClient(new DefaultAzureCredential(), subscriptionId);

// For client-side applications running in the browser, use this code instead:
// const credential = new InteractiveBrowserCredential({
//   tenantId: "<YOUR_TENANT_ID>",
//   clientId: "<YOUR_CLIENT_ID>"
// });
// const client = new AutomanageClient(credential, subscriptionId);

Exemplos

Criar ou atualizar perfil de configuração

Para atualizar um arquivo, basta substituir qualquer um dos valores dentro das propriedades e executar a função createOrUpdate() novamente.

const newProfile = {
    "location": "eastus",
    "tags": {
        "environment": "prod"
    },
    "properties": {
        "configuration": {
            "Antimalware/Enable": true,
            "Antimalware/EnableRealTimeProtection": true,
            "Antimalware/RunScheduledScan": true,
            "Antimalware/ScanType": "Quick",
            "Antimalware/ScanDay": 7,
            "Antimalware/ScanTimeInMinutes": 120,
            "Backup/Enable": true,
            "Backup/PolicyName": "dailyBackupPolicy",
            "Backup/TimeZone": "UTC",
            "Backup/InstantRpRetentionRangeInDays": 2,
            "Backup/SchedulePolicy/ScheduleRunFrequency": "Daily",
            "Backup/SchedulePolicy/SchedulePolicyType": "SimpleSchedulePolicy",
            "Backup/RetentionPolicy/RetentionPolicyType": "LongTermRetentionPolicy",
            "Backup/RetentionPolicy/DailySchedule/RetentionDuration/Count": 180,
            "Backup/RetentionPolicy/DailySchedule/RetentionDuration/DurationType": "Days",
            "WindowsAdminCenter/Enable": false,
            "VMInsights/Enable": true,
            "AzureSecurityCenter/Enable": true,
            "UpdateManagement/Enable": true,
            "ChangeTrackingAndInventory/Enable": true,
            "GuestConfiguration/Enable": true,
            "AutomationAccount/Enable": true,
            "LogAnalytics/Enable": true,
            "BootDiagnostics/Enable": true
        }
    }
}

await client.configurationProfiles.createOrUpdate("configurationProfileName", "resourceGroupName", newProfile);

Excluir Perfil de Configuração

await client.configurationProfiles.delete("resourceGroupName", "configurationProfileName");

Criar atribuição de perfil de produção de práticas recomendadas

let assignment = {
    "properties": {
        "configurationProfile": "/providers/Microsoft.Automanage/bestPractices/AzureBestPracticesProduction"
    }
}

await client.configurationProfileAssignments.createOrUpdate("default", "resourceGroupName", "vmName", assignment);

Criar atribuição de perfil personalizado

let assignment = {
    "properties": {
        "configurationProfile": "/subscriptions/<subscription ID>/resourceGroups/resourceGroupName/providers/Microsoft.Automanage/configurationProfiles/configurationProfileName"
    }
}

await client.configurationProfileAssignments.createOrUpdate("default", "resourceGroupName", "vmName", assignment);

Pacote JavaScript

Para usar essa biblioteca de clientes no navegador, primeiro você precisa usar um empacotador. Para obter detalhes sobre como fazer isso, consulte nossa documentação de agrupamento.

Principais conceitos

AutomanageClient

AutomanageClient é a interface principal para desenvolvedores que usam a biblioteca de clientes do Gerenciamento Automatizado do Azure. Explore os métodos neste objeto cliente para entender os diferentes recursos do serviço de Gerenciamento Automatizado do Azure que você pode acessar.

Solução de problemas

Log

A habilitação do log pode ajudar a descobrir informações úteis sobre falhas. Para ver um log de solicitações e respostas HTTP, defina a variável de ambiente AZURE_LOG_LEVEL como info. Como alternativa, o log pode ser habilitado no runtime chamando setLogLevel em @azure/logger:

const { setLogLevel } = require("@azure/logger");
setLogLevel("info");

Para obter instruções mais detalhadas sobre como habilitar logs, veja os documentos do pacote @azure/logger.

Próximas etapas

Examine o diretório de exemplos para obter exemplos detalhados sobre como usar essa biblioteca.

Contribuição

Se você quiser contribuir com essa biblioteca, leia o guia de contribuição para saber como criar e testar o código.

Impressões