Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Autoren von Konsolenerweiterungen können Erweiterungen, die sie geschrieben haben, zum Community-Hub beitragen. Community Hub-Benutzer können die Erweiterungen herunterladen und deren Installation über ihre Configuration Manager-Hierarchie hinweg verwalten. Das Bereitstellen von Erweiterungen über den Community-Hub ersetzt den vorherigen Bereitstellungsprozess.
Informationen zur Version
Um Konsolenerweiterungen aus dem Community Hub herunterzuladen, benötigen Sie entweder:
- Eine Technical Preview-Version von Configuration Manager
- Configuration Manager, Version 2103 oder höher
Sie können Ihre eigenen signierten Erweiterungen testen, indem Sie sie lokal mit den folgenden Versionen importieren:
- Eine Technical Preview-Version von Configuration Manager
- Configuration Manager, Version 2103 oder höher
Sie können eine nicht signierte Erweiterung lokal importieren . Nicht signierte Erweiterungen sind nur für den lokalen Import und Test gedacht. Nicht signierte Erweiterungen können nicht an den Community Hub übermittelt werden. Zum Importieren einer nicht signierten Erweiterung ist eine der folgenden Versionen erforderlich:
- Technical Preview, Version 2105.2 oder höher.
- Configuration Manager, Version 2107 oder höher
Ab Version 2111 können Sie mit dem Assistenten zum Importieren von Konsolenerweiterungen sowohl signierte als auch nicht signierte Erweiterungen importieren.
Voraussetzungen
Um eine Konsolenerweiterung im Community-Hub für den Download durch Configuration Manager-Administratoren zu registrieren, benötigen Sie die folgenden Voraussetzungen:
Erfüllen Sie alle Voraussetzungen , um zum Community-Hub beizutragen
Configuration Manager-Hauptadmin mit Allen Bereichsrechten.
Eine gültige Nutzlast in einer Authenticode-signierten
.cabDatei, sobald Sie zur Veröffentlichung bereit sind. Ihre.cabDatei muss die folgenden Elemente enthalten:- Eine Manifestdatei mit dem Namen
manifest.xml - Der Autor und die Version der Erweiterung müssen im
manifest.xml - Alle relevanten Dateien für die Erweiterung müssen in der
.cabDatei enthalten sein- Jede Datei muss im Manifest aufgeführt sein und den richtigen Namen und SHA256-Hash aufweisen.
- Eine Manifestdatei mit dem Namen
Erstellen einer Erweiterung
Das Erstellen Ihrer Erweiterung für den Communityhub unterscheidet sich nicht wesentlich von der vorherigen Vorgehensweise. Es ist jedoch nicht mehr erforderlich, die Dateien in ihren jeweiligen %ProgramFiles%\Microsoft Endpoint Manager\AdminConsole\XmlStorage\Extensions Ordnern zu installieren. Dies ist Teil der Funktion der neuen manifest.xml Datei. Du kannst weiterhin die folgenden Elemente erstellen:
- Aktionen
- Forms
- Verwaltungsklassen
- Nodes
- Ansichten
- Integrieren Sie eigene benutzerdefinierte Assistenten in die Configuration Manager-Konsole, indem Sie ein Assistentenframework Ihrer Wahl verwenden
- Sie können keine Assistenten mithilfe des vorhandenen Configuration Manager-Konsolenframeworks erstellen.
- Sie können keine Schritte der vorhandenen Configuration Manager-Assistenten ändern oder entfernen.
Tipp
Im GitHub-Repository des Community Hubs können Sie die CAB-Datei einer Beispielerweiterung herunterladen.
Erstellen einer gültigen CAB-Datei für Nutzdaten
Nachdem Sie die Dateien für Ihre Erweiterung erstellt haben, erstellen Sie die manifest.xml Datei und verpacken sie dann alle in eine von Authenticode signierte .cab Datei.
- Eine gültige Nutzlast in einer Authenticode-signierten
.cabDatei. Ihre.cabDatei muss die folgenden Elemente enthalten:- Eine Manifestdatei mit dem Namen
manifest.xml - Der Autor und die Version der Erweiterung müssen im
manifest.xml - Alle relevanten Dateien für die Erweiterung müssen in der
.cabDatei enthalten sein- Jede Datei muss im Manifest aufgeführt sein und den richtigen Namen und SHA256-Hash aufweisen.
- Eine Manifestdatei mit dem Namen
Manifest.xml Format:
<CustomExtensionManifest ExtensionID="{A GUID to identify this extension}" Name="{Name of the extension to be shown in the Console Extension node}" Description="{Description of the extension to be shown in the Console Extension node" Version="{The version of the extension to be shown in the Console Extension node. For example:1.0}" Author="{The author of the extension to be shown in the Console Extension node}">
<Deployments>
<ActionExtensionDeployment ParentNode="{the GUID that identify the folder/node you want to place the action under}">
<FileList>
<File Name="{The name of the xml file that defines the action. For example: MyAction.xml}">
<Hash Algorithm="sha256">{The SHA256 hash of this file}</Hash>
</File>
</FileList>
</ActionExtensionDeployment>
<NodeExtensionDeployment ParentNode="{the GUID that identify the folder you want to place the node under}">
<FileList>
<File Name="{The name of the xml file that defines the node. For example: MyNode.xml}">
<Hash Algorithm="sha256">{The SHA256 hash of this file}</Hash>
</File>
</FileList>
</NodeExtensionDeployment>
<FormExtensionDeployment>
<FileList>
<File Name="{The name of the xml file that defines the form. For example: MyForm.xml}">
<Hash Algorithm="sha256">{The SHA256 hash of this file}</Hash>
</File>
<File Name="{The name of the dll file that defines the form. For example: MyForm.dll}">
<Hash Algorithm="sha256">{The SHA256 hash of this file}</Hash>
</File>
</FileList>
</FormExtensionDeployment>
<ManagementClassExtensionDeployment>
<FileList>
<File Name="{The name of the xml file that defines the WMI class. For example: MyClass.xml}">
<Hash Algorithm="sha256">{The SHA256 hash of this file}</Hash>
</File>
<File Name="{The name of the dll file that defines the WMI class. For example: MyClass.dll}">
<Hash Algorithm="sha256">{The SHA256 hash of this file}</Hash>
</File>
</FileList>
</ManagementClassExtensionDeployment>
<ViewExtensionDeployment>
<FileList>
<File Name="{The name of the dll file that defines the view. For example: MyView.dll}">
<Hash Algorithm="sha256">{The SHA256 hash of this file}</Hash>
</File>
</FileList>
</ViewExtensionDeployment>
<CabExtensionDeployment>
<FileList>
<File Name="{The name of the cab file to deploy. CabExtensionDeployment is used when your payload cab file contains a cab within it that needs to be deployed. For example: MyCab.cab}">
<Hash Algorithm="sha256">{The SHA256 hash of this file}</Hash>
</File>
</FileList>
</CabExtensionDeployment>
</Deployments>
</CustomExtensionManifest>
Beispiel manifest.xml Datei:
<CustomExtensionManifest ExtensionID="808b9ce3-e574-49be-82be-64ed35d800c5" Name="Nice Console Node and Console Action Extension" Description="Very Useful Extension" Version="1.1" Author="Me">
<Deployments>
<NodeExtensionDeployment ParentNode="d61498cb-7b3f-4748-ae3e-026674fb0cbd">
<FileList>
<File Name="Test.xml">
<Hash Algorithm="sha256">543F2947AEA734B6833F275091AC6A159C0FCD341373D6E53062E37281B602B3</Hash>
</File>
</FileList>
</NodeExtensionDeployment>
<ActionExtensionDeployment ParentNode="172d85e7-bb7a-4479-a6a2-768f175b75cb">
<FileList>
<File Name="Test2.xml">
<Hash Algorithm="sha256">C60FB69B86BF9B2E924FF272292CA2C97864D636B8190C95DC926049651A002E</Hash>
</File>
</FileList>
</ActionExtensionDeployment>
</Deployments>
</CustomExtensionManifest>
Registrieren der Erweiterung für eine Website zum Testen
Wenn Sie Ihre Erweiterung in eine Authenticode-signierte .cab Datei erstellt und verpackt haben, können Sie sie in einer Configuration Manager-Testumgebung testen. Dazu posten Sie sie über den Verwaltungsdienst. Nachdem die Erweiterung in die Website eingefügt wurde, können Sie sie genehmigen und lokal über den Knoten Konsolenerweiterungen installieren.
Wichtig
Lokale Tests können Sie nicht signierte Konsolenerweiterungen importieren, wenn Sie Version 2107 oder höher verwenden. Weitere Informationen und zusätzliche Importmethoden finden Sie unter Importieren von Konsolenerweiterungen.
Führen Sie das folgende PowerShell-Skript aus, nachdem Sie das und
$cabFilePathbearbeitet haben$adminServiceProvider:-
$adminServiceProvider- Der SMSProvider-Server der obersten Ebene, auf dem der Verwaltungsdienst installiert ist -
$cabFilePath- Pfad zur Authenticode-signierten.cabDatei der Erweiterung
$adminServiceProvider = "SMSProviderServer.contoso.com" $cabFilePath = "C:\Testing\MyExtension.cab" $adminServiceURL = "https://$adminServiceProvider/AdminService/v1/ConsoleExtensionMetadata/AdminService.UploadExtension" $cabFileName = (Get-Item -Path $cabFilePath).Name $Data = Get-Content $cabFilePath $Bytes = [System.IO.File]::ReadAllBytes($cabFilePath) $base64Content = [Convert]::ToBase64String($Bytes) $Headers = @{ "Content-Type" = "Application/json" } $Body = @{ CabFile = @{ FileName = $cabFileName FileContent = $base64Content } } | ConvertTo-Json $result = Invoke-WebRequest -Method Post -Uri $adminServiceURL -Body $Body -Headers $Headers -UseDefaultCredentials if ($result.StatusCode -eq 200) {Write-Host "$cabFileName was published successfully."} else {Write-Host "$cabFileName publish failed. Review AdminService.log for more information."}-
Wechseln Sie in der Configuration Manager-Konsole zuAdministrationsübersicht>>, Updates undWartungskonsolenerweiterungen>.
Wählen Sie Ihre Erweiterung und dann Installation genehmigen aus.
Um die Erweiterung auf der aktuellen Konsole zu installieren, wählen Sie unter "Lokale Erweiterung" die Option "Installieren" aus.
Durch das erneute Ausführen des PowerShell-Skripts mit derselben Erweiterung und derselben Version wird die aktuell vorhandene überschrieben.
Teilen Sie Ihre Erweiterung im Community Hub
Gilt nur für Technical Preview-Versionen von Configuration Manager
Vergewissern Sie sich, dass Sie dem Communityhub beigetreten sind und die Einladung angenommen haben, nachdem Ihre Beitrittsanfrage genehmigt wurde. Sie tragen Erweiterungen auf die gleiche Weise bei wie andere Community-Hub-Objekte. Denn es gibt zusätzliche Anforderungen und zusätzliche Informationen, die Sie für eine Erweiterung bereitstellen müssen. Wenn Sie eine Konsolenerweiterung zum Community Hub beitragen, muss der Inhalt signiert werden. Inhalte für Konsolenerweiterungen werden nicht von Microsoft gehostet. Wenn Sie Ihr Element beisteuern, werden Sie aufgefordert, einen Speicherort für die signierte .cab Datei zusammen mit anderen Informationen für die Erweiterung anzugeben. Die folgenden Elemente sind erforderlich, um Erweiterungen beitragen zu können:
-
Inhalts-URL: Speicherort für die herunterladbare
.cabDatei -
SHA-256-Hash des Inhalts: SHA-256-Hash der
.cabDatei - Lizenz-URL: URL der Lizenz für die Erweiterung, z. B. https://mit-license.org/
- Datenschutzbestimmungen URL: URL Ihrer Datenschutzerklärung
Wichtig
Wenn Sie eine Erweiterung lokal in die Konsole importieren, indem Sie sie über den Verwaltungsdienst bereitstellen, schlägt der Download fehl, wenn Sie versuchen, dieselbe Erweiterung aus dem Community-Hub herunterzuladen. Um den Download Ihrer Erweiterung aus dem Community Hub zu testen, löschen Sie die importierte Erweiterung, und laden Sie sie dann aus dem Community Hub herunter.