你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

适用于 JavaScript 的 Azure Automanage 客户端库 - 版本 1.0.2

此包包含一个同构 SDK (在 azure Automanage 客户端) Node.js和浏览器中运行。

Automanage 客户端

源代码 | 包 (NPM) | API 参考文档 | 样品

入门

目前支持的环境

有关更多详细信息,请参阅我们的支持政策

先决条件

安装 @azure/arm-automanage

使用 安装适用于 JavaScript 的 npmAzure Automanage 客户端库:

npm install @azure/arm-automanage

创建 AutomanageClient 并对其进行身份验证

若要创建用于访问 Azure Automanage API 的客户端对象,需要 endpoint Azure Automanage 资源的 和 credential。 Azure Automanage 客户端可以使用 Azure Active Directory 凭据进行身份验证。 可以在 Azure 门户中找到 Azure Automanage 资源的终结点。

可以使用 @azure/标识 库中的凭据或 现有 AAD 令牌向 Azure Active Directory 进行身份验证。

若要使用如下所示的 DefaultAzureCredential 提供程序或 Azure SDK 提供的其他凭据提供程序,请安装包 @azure/identity

npm install @azure/identity

还需要 注册新的 AAD 应用程序,并通过将合适的角色分配给服务主体来授予对 Azure Automanage 的访问权限 (注意:诸如 之类的 "Owner" 角色不会授予) 所需的权限。 将 AAD 应用程序的客户端 ID、租户 ID 和客户端密码的值设置为环境变量:AZURE_CLIENT_ID、、AZURE_TENANT_IDAZURE_CLIENT_SECRET

有关如何创建 Azure AD 应用程序的详细信息,请查看 本指南

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);

示例

创建或更新配置文件

若要更新文件,只需替换 属性 中的任何值,然后再次运行 createOrUpdate () 函数。

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);

删除配置文件

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

创建最佳做法生产配置文件分配

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

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

创建自定义配置文件分配

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

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

JavaScript 捆绑包

若要在浏览器中使用此客户端库,首先需要使用捆绑程序。 有关如何执行此操作的详细信息,请参阅捆绑 文档

关键概念

AutomanageClient

AutomanageClient 是使用 Azure Automanage 客户端库的开发人员的主要接口。 浏览此客户端对象上的方法,了解可以访问的 Azure Automanage 服务的不同功能。

疑难解答

日志记录

启用日志记录可能有助于发现有关故障的有用信息。 若要查看 HTTP 请求和响应的日志,请将 AZURE_LOG_LEVEL 环境变量设置为 info。 或者,可以在运行时通过调用 @azure/logger 中的 setLogLevel 来启用日志记录:

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

有关如何启用日志的更详细说明,请查看 @azure/logger 包文档

后续步骤

有关如何使用此库的详细示例,请查看 示例 目录。

贡献

若要为此库做出贡献,请阅读贡献指南,详细了解如何生成和测试代码。

曝光数