如何发布自定义来宾配置包项目
在开始之前,最好先阅读来宾配置的概述页面。
来宾配置自定义 .zip 包必须存储在托管计算机可通过 HTTPS 访问的位置。 示例包括 GitHub 存储库、Azure 存储库、Azure 存储或专用数据中心中的 Web 服务器。
支持 Audit
和 AuditandSet
的配置包以相同的方式发布。 在发布过程中,无需根据包模式执行任何特殊操作。
发布配置包
用于存储配置包的首选位置是 Azure Blob 存储。 对存储帐户没有特殊要求,但最好将该文件托管在计算机附近的某个区域中。 如果不想公开包,可以在 URL 中包含 SAS 令牌,或在专用网络中为计算机实现服务终结点。
如果没有存储帐户,请使用以下示例创建一个存储帐户。
# Creates a new resource group, storage account, and container
New-AzResourceGroup -name myResourceGroupName -Location ChinaNorth
New-AzStorageAccount -ResourceGroupName myResourceGroupName -Name mystorageaccount -SkuName 'Standard_LRS' -Location 'chinanorth' | New-AzStorageContainer -Name guestconfiguration -Permission Blob
若要将配置包发布到 Azure Blob 存储,可以按照以下利用 Az.Storage 模块的步骤进行操作。
首先,获取存储帐户的上下文,该帐户将包存储在其中。 此示例通过指定连接字符串来创建上下文,并将其保存在变量 $Context 中。
$Context = New-AzStorageContext -ConnectionString "DefaultEndpointsProtocol=https;AccountName=ContosoGeneral;AccountKey=< Storage Key for ContosoGeneral ends with == >;"
接下来,将配置包添加到存储帐户。 此示例将 zip 文件 ./MyConfig.zip 上传到 blob“guestconfiguration”。
Set-AzStorageBlobContent -Container "guestconfiguration" -File ./MyConfig.zip -Blob "guestconfiguration" -Context $Context
(可选)可以在 URL 中添加 SAS 令牌,这样可以确保安全访问内容包。 以下示例生成具有完整 blob 权限的 blob SAS 令牌,并返回具有共享访问签名令牌的完整 blob URI。
$contenturi = New-AzStorageBlobSASToken -Context $Context -FullUri -Container guestconfiguration -Blob "guestconfiguration" -Permission rwd
后续步骤
- 从开发环境测试包项目。
- 使用
GuestConfiguration
模块创建 Azure Policy 定义,用于对环境进行大规模管理。 - 使用 Azure 门户分配自定义策略定义。
- 了解如何查看来宾配置策略分配的合规性详细信息。