Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Autorzy rozszerzeń konsoli mogą współtworzyć rozszerzenia napisane w centrum społeczności. Użytkownicy centrum społeczności mogą pobierać rozszerzenia i zarządzać ich instalacją w hierarchii Configuration Manager. Współtworzenie rozszerzeń za pośrednictwem community hub zastępuje poprzedni proces wdrażania.
Wersja
Aby pobrać rozszerzenia konsoli z centrum Community Hub, musisz wykonać jedną z następujących czynności:
- Wersja techniczna wersji zapoznawczej Configuration Manager
- Configuration Manager wersji 2103 lub nowszej
Możesz przetestować własne podpisane rozszerzenia, importując je lokalnie z następującymi wersjami:
- Wersja techniczna wersji zapoznawczej Configuration Manager
- Configuration Manager wersji 2103 lub nowszej
Możesz zaimportować niepodpisane rozszerzenie lokalnie. Niepodpisane rozszerzenia są przeznaczone tylko do celów importu lokalnego i testowania. Nie można przesłać niepodpisanych rozszerzeń do Centrum społeczności. Importowanie niepodpisanego rozszerzenia wymaga jednej z następujących wersji:
- Wersja Technical Preview w wersji 2105.2 lub nowszej .
- Configuration Manager wersji 2107 lub nowszej
Począwszy od wersji 2111, możesz zaimportować zarówno podpisane, jak i niepodpisane rozszerzenia przy użyciu kreatora importowania rozszerzenia konsoli.
Wymagania wstępne
Aby zarejestrować rozszerzenie konsoli w centrum społeczności dla administratorów Configuration Manager do pobrania, potrzebne są następujące wymagania wstępne:
Spełnianie wszystkich wymagań wstępnych dotyczących współtworzenia centrum społeczności
Configuration Manager pełnego administratoraz wszystkimi prawami zakresu.
Prawidłowy ładunek w pliku z podpisem
.cabauthenticode po zakończeniu publikowania. Plik.cabmusi zawierać następujące elementy:- Plik manifestu o nazwie
manifest.xml - Autor i wersja rozszerzenia muszą być wymienione w
manifest.xml - Wszystkie odpowiednie pliki dla rozszerzenia muszą znajdować się
.cabw pliku- Każdy plik musi być wymieniony w manifeście i mieć poprawną nazwę i skrót SHA256
- Plik manifestu o nazwie
Tworzenie rozszerzenia
Tworzenie rozszerzenia dla centrum społeczności nie różni się zbytnio od poprzedniego. Jednak nie trzeba już instalować plików w odpowiednim %ProgramFiles%\Microsoft Endpoint Manager\AdminConsole\XmlStorage\Extensions folderze. Jest to część funkcji nowego manifest.xml pliku. Nadal można utworzyć następujące elementy:
- Akcje
- Formularze
- Klasy zarządzania
- Węzłów
- Widoki
- Integrowanie własnych kreatorów niestandardowych z konsolą Configuration Manager przy użyciu wybranej struktury kreatora
- Nie można tworzyć kreatorów przy użyciu istniejącej struktury konsoli Configuration Manager.
- Nie można modyfikować ani usuwać kroków z istniejących kreatorów Configuration Manager.
Porada
Z repozytorium GitHub centrum społeczności możesz pobrać plik cab przykładowego rozszerzenia.
Tworzenie prawidłowego pliku cab ładunku
Po utworzeniu plików dla rozszerzenia utworzysz manifest.xml plik, a następnie spakujesz je wszystkie razem w pliku z podpisem .cab authenticode.
- Prawidłowy ładunek w pliku z podpisem
.cabauthenticode. Plik.cabmusi zawierać następujące elementy:- Plik manifestu o nazwie
manifest.xml - Autor i wersja rozszerzenia muszą być wymienione w
manifest.xml - Wszystkie odpowiednie pliki dla rozszerzenia muszą znajdować się
.cabw pliku- Każdy plik musi być wymieniony w manifeście i mieć poprawną nazwę i skrót SHA256
- Plik manifestu o nazwie
format Manifest.xml:
<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>
Przykładowy plik manifest.xml:
<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>
Rejestrowanie rozszerzenia w lokacji na potrzeby testowania
Jeśli rozszerzenie zostało skompilowane i spakowane w plik z podpisem .cab authenticode, możesz przetestować je w środowisku laboratorium Configuration Manager. Zrobisz to, publikując go za pośrednictwem usługi administracyjnej. Po wstawieniu rozszerzenia do lokacji można je zatwierdzić i zainstalować lokalnie z poziomu węzła Rozszerzenia konsoli .
Ważna
W przypadku testowania lokalnego można zaimportować niepodpisane rozszerzenia konsoli w wersji 2107 lub nowszej. Aby uzyskać więcej informacji i dodatkowe metody importu, zobacz Importowanie rozszerzeń konsoli.
Uruchom następujący skrypt programu PowerShell po edycji elementów
$adminServiceProvideri$cabFilePath:-
$adminServiceProvider— serwer SMSProvider najwyższego poziomu, na którym jest zainstalowana usługa administracyjna -
$cabFilePath— Ścieżka do pliku z podpisem.cabauthenticode rozszerzenia
$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."}-
W konsoli Configuration Manager przejdź do obszaruOmówienie>administracji>Aktualizacje iRozszerzenia konsoli obsługi>.
Wybierz rozszerzenie, a następnie wybierz pozycję Zatwierdź instalację.
Aby zainstalować rozszerzenie w bieżącej konsoli, wybierz pozycję Zainstaluj w obszarze Rozszerzenie lokalne.
Ponowne uruchomienie skryptu programu PowerShell z tym samym rozszerzeniem i tą samą wersją spowoduje zastąpienie bieżącego istniejącego.
Udostępnianie rozszerzenia w centrum społeczności
Dotyczy tylko wersji technical preview Configuration Manager
Upewnij się, że dołączyłeś do centrum społeczności i że zaakceptowano zaproszenie po zatwierdzeniu żądania dołączenia. Rozszerzenia współtworzą się w taki sam sposób, jak inne obiekty centrum społeczności. Jednak w przypadku dodatkowych wymagań i dodatkowych informacji należy podać dla rozszerzenia. Podczas współtworzenia rozszerzenia konsoli w centrum Community Hub zawartość musi być podpisana. Zawartość rozszerzeń konsoli nie jest hostowana przez firmę Microsoft. Podczas współtworzenia elementu zostanie wyświetlony monit o podanie lokalizacji podpisanego .cab pliku wraz z innymi informacjami dotyczącymi rozszerzenia. Do współtworzenia rozszerzeń są wymagane następujące elementy:
-
Adres URL zawartości: lokalizacja pliku do
.cabpobrania -
Skrót SHA-256 zawartości: skrót
.cabSHA-256 pliku - Adres URL licencji: adres URL licencji dla rozszerzenia, taki jak https://mit-license.org/
- Adres URL oświadczenia o ochronie prywatności: adres URL oświadczenia o ochronie prywatności
Ważna
Jeśli zaimportujesz rozszerzenie lokalnie do konsoli, publikując je za pośrednictwem usługi administracyjnej, pobieranie zakończy się niepowodzeniem, jeśli spróbujesz pobrać to samo rozszerzenie z centrum Community Hub. Aby przetestować pobieranie rozszerzenia z centrum Community Hub, usuń zaimportowane rozszerzenie, a następnie pobierz je z Community Hub.