Freigeben über


Veröffentlichen benutzerdefinierter Paketartefakte für Computerkonfigurationen

Bevor Sie beginnen, sollten Sie die Übersichtsseite zur Computerkonfiguration lesen.

Die benutzerdefinierten .zip-Pakete für die Computerkonfiguration müssen an einem Ort gespeichert werden, der für die verwalteten Computer über HTTPS zugänglich ist. Als Speicherort kommen beispielsweise GitHub-Repositorys, ein Azure-Repository, ein Azure-Speicher oder ein Webserver in Ihrem privaten Rechenzentrum in Frage.

Konfigurationspakete, die Audit und AuditandSetunterstützen, werden auf die gleiche Weise veröffentlicht. Es ist nicht notwendig, während der Veröffentlichung je nach Paketmodus besondere Maßnahmen zu ergreifen.

Veröffentlichen eines Konfigurationspakets

Der bevorzugte Speicherort zum Speichern eines Konfigurationspakets ist Azure Blob Storage. Es werden keine besonderen Anforderungen an das Speicherkonto gestellt, aber es ist ratsam, die Datei in einer Region in der Nähe Ihrer Computer zu hosten. Falls Sie das Paket nicht öffentlich zugänglich machen möchten, können Sie ein SAS-Token in die URL einfügen oder einen Dienstendpunkt für Computer in einem privaten Netzwerk implementieren.

Um Ihr Konfigurationspaket in Azure Blob Storage zu veröffentlichen, können Sie die folgenden Schritte ausführen, die das Az.Storage-Modul verwenden.

Wenn Sie über kein Speicherkonto verfügen, erstellen Sie anhand des folgenden Beispiels ein Speicherkonto.

# Creates a new resource group, storage account, and container
$ResourceGroup = '<resource-group-name>'
$Location      = '<location-id>'
New-AzResourceGroup -Name $ResourceGroup -Location $Location

$newAccountParams = @{
    ResourceGroupname = $ResourceGroup
    Location          = $Location
    Name              = '<storage-account-name>'
    SkuName           = 'Standard_LRS'
}
$container = New-AzStorageAccount @newAccountParams |
    New-AzStorageContainer -Name machine-configuration -Permission Blob

Rufen Sie als nächstes den Kontext des Speicherkontos ab, in dem Sie das Paket speichern möchten. Wenn Sie das Speicherkonto im vorherigen Beispiel erstellt haben, können Sie den Kontext aus dem Speichercontainerobjekt abrufen, das in der $container-Variable gespeichert ist:

$context = $container.Context

Wenn Sie einen vorhandenen Speichercontainer verwenden, können Sie die Verbindungszeichenfolge des Containers mit dem New-AzStorageContext-Cmdlet verwenden:

$connectionString = @(
    'DefaultEndPointsProtocol=https'
    'AccountName=<storage-account-name>'
    'AccountKey=<storage-key-for-the-account>' # ends with '=='
) -join ';'
$context = New-AzStorageContext -ConnectionString $connectionString

Fügen Sie als Nächstes das Konfigurationspaket zum Speicherkonto hinzu. In diesem Beispiel wird die Zip-Datei ./MyConfig.zip in den Blobcontainer machine-configuration hochgeladen.

$setParams = @{
    Container = 'machine-configuration'
    File      = './MyConfig.zip'
    Context   = $context
}
$blob = Set-AzStorageBlobContent @setParams
$contentUri = $blob.ICloudBlob.Uri.AbsoluteUri

Hinweis

Wenn Sie diese Beispiele in Cloudshell ausführen, aber Ihre ZIP-Datei lokal erstellt haben, können Sie die Datei nach Cloudshell hochladen.

Während dieser nächste Schritt optional ist, sollten Sie ein SAS (Shared Access Signature)-Token in der URL hinzufügen, um sicheren Zugriff auf das Paket zu gewährleisten. Im folgenden Beispiel wird ein Blob-SAS-Token mit Leseberechtigung generiert und der vollständige Blob-URI mit dem Signaturtoken für freigegebenen Zugriff zurückgegeben. In diesem Beispiel hat der Token eine Gültigkeit von drei Jahren.

$startTime = Get-Date
$endTime   = $startTime.AddYears(3)

$tokenParams = @{
    StartTime  = $startTime
    ExpiryTime = $endTime
    Container  = 'machine-configuration'
    Blob       = 'MyConfig.zip'
    Permission = 'r'
    Context    = $context
    FullUri    = $true
}
$contentUri = New-AzStorageBlobSASToken @tokenParams

Wichtig

Nachdem Sie das SAS-Token erstellt haben, notieren Sie sich den zurückgegebenen URI. Sie können das Token nach der Erstellung nicht mehr abrufen. Sie können nur neue Token erstellen. Weitere Informationen zu SAS-Token finden Sie unter Gewähren von eingeschränktem Zugriff auf Azure Storage-Ressourcen mithilfe von Shared Access Signatures (SAS).

Nächster Schritt