Vývoj pluginového modulu brány
Modul plug-in brány Windows Admin Center umožňuje komunikaci rozhraní API z uživatelského rozhraní vašeho nástroje nebo řešení do cílového uzlu. Windows Admin Center hostuje službu brány, která předává příkazy a skripty z modulů plug-in brány, které se mají spouštět na cílových uzlech. Službu brány je možné rozšířit tak, aby zahrnovala vlastní moduly plug-in brány, které podporují jiné protokoly než výchozí.
Tyto moduly plug-in brány jsou ve výchozím nastavení součástí Centra pro správu Windows:
- Plugin brány PowerShellu
- Modul plug-in brány služby WMI (Windows Management Instrumentation)
Pokud chcete komunikovat s jiným protokolem než s PowerShellem nebo rozhraním WMI, jako je rest, můžete vytvořit vlastní modul plug-in brány. Moduly plug-in brány se načítají do samostatné domény AppDomain odděleně od stávajícího procesu brány, ale používají stejnou úroveň oprávnění.
Poznámka
Neznáte různé typy rozšíření? Přečtěte si další informace o architektuře rozšiřitelnosti a typech rozšíření.
Důležitý
Sada Windows Admin Center SDK a vývojářské nástroje ještě nebyly aktualizovány, aby podporovaly vývoj zásuvných modulů brány kompatibilních s modernizovaným Windows Admin Center. Následující průvodce nepovede k rozšíření .NET 8 kompatibilnímu s modernizovanou bránou.
Pokud máte zájem o vývoj plug-inu pro modernizované brány nebo o upgrade stávajícího plug-inu, odešlete e-mail na wacextensionrequest@microsoft.com.
Moduly plug-in brány vyvinuté v .NET 6, zatímco back-endová aktualizace byla ve verzi Preview, nemusí správně fungovat s nejnovější verzí centra pro správu Windows kvůli zásadním změnám z .NET 6 na .NET 8. Doporučujeme upgradovat rozšíření na .NET 8 co nejdříve.
Příprava prostředí
Pokud jste to ještě neudělali, připravte své prostředí instalací závislostí a globálních předpokladů, které jsou vyžadovány pro všechny projekty.
Vytvořte plug-in brány (knihovna C#)
Pokud chcete vytvořit vlastní modul plug-in brány, vytvořte novou třídu C#, která implementuje rozhraní IPlugIn
z oboru názvů Microsoft.ManagementExperience.FeatureInterfaces
.
Poznámka
Rozhraní IFeature
, které je k dispozici ve starších verzích sady SDK, je nyní označeno jako zastaralé. Veškerý vývoj modulů plug-in brány by měl používat IPlugIn (nebo volitelně abstraktní třídu HttpPlugIn).
Stažení ukázky z GitHubu
Pokud chcete rychle začít s vlastním zásuvným modulem brány, můžete naklonovat nebo stáhnout kopii našeho ukázkového projektu zásuvného modulu v jazyce C# z našeho webu Windows Admin Center SDK na GitHubu.
Přidání obsahu
Přidejte nový obsah do naklonované kopie ukázkového projektu modulu plug-in C# projektu (nebo vlastního projektu), který bude obsahovat vlastní rozhraní API, a pak vytvořte soubor DLL modulu plug-in vlastní brány, který se použije v dalších krocích.
Nasazení modulu plug-in pro testování
Otestujte knihovnu DLL vlastního bránového modulu plug-in tak, že ji načtete do procesu brány Windows Admin Center.
Centrum pro správu Windows hledá všechny pluginy ve složce plugins
ve složce Application Data aktuálního počítače (pomocí hodnoty CommonApplicationData z výčtu Environment.SpecialFolder). Ve Windows 10 je toto umístění C:\ProgramData\Server Management Experience
. Pokud složka plugins
ještě neexistuje, můžete ji vytvořit sami.
Poznámka
Umístění plug-inu v režimu ladění můžete přepsat aktualizací konfigurační hodnoty StaticsFolder. Pokud ladíte lokálně, toto nastavení je v App.Config Desktopového řešení.
Uvnitř složky plug-in (v tomto příkladu C:\ProgramData\Server Management Experience\plugins
)
- Vytvořte novou složku se stejným názvem jako hodnota vlastnosti
Name
Feature
ve vaší vlastní knihovně DLL pro zásuvný modul brány (v našem vzorovém projektu je hodnotaName
"Sample Uno") - Do této nové složky zkopírujte soubor DLL vlastního pluginu brány.
- Restartování procesu Windows Admin Center
Po restartování procesu správce Windows budete moct uplatnit rozhraní API ve vlastní knihovně DLL modulu plug-in brány tak, že vydáte příkaz GET, PUT, PATCH, DELETE nebo POST pro http(s)://{domain|localhost}/api/nodes/{node}/features/{feature name}/{identifier}
Volitelné: Připojit k pluginu pro ladění
V sadě Visual Studio 2017 v nabídce Ladění vyberte Připojit k procesu. V dalším okně se posuňte v seznamu Dostupné procesy a vyberte SMEDesktop.exea pak vyberte Připojit. Jakmile se ladicí program spustí, můžete do kódu funkce umístit zarážku a pak si procvičit formát adresy URL. V našem ukázkovém projektu (název funkce: Sample Uno) je adresa URL: "<http://localhost:6516/api/nodes/fake-server.my.domain.com/features/Sample%20Uno>"
Vytvoření rozšíření nástrojů pomocí sady Windows Admin Center SDK
Teď potřebujeme vytvořit rozšíření nástroje, ze kterého můžete volat vlastní plugin pro bránu. Vytvořte nebo přejděte do složky, do které chcete ukládat soubory projektu, otevřete příkazový řádek a nastavte tuto složku jako pracovní adresář. Pomocí sady WINDOWS Admin Center SDK, která byla nainstalována dříve, vytvořte nové rozšíření s následující syntaxí:
wac create --company "{!Company Name}" --tool "{!Tool Name}"
Hodnota | Vysvětlení | Příklad |
---|---|---|
{!Company Name} |
Název vaší společnosti (s mezerami) | Contoso Inc |
{!Tool Name} |
Název vašeho nástroje (s mezerami) | Manage Foo Works |
Tady je příklad použití:
wac create --company "Contoso Inc" --tool "Manage Foo Works"
Tento příkaz vytvoří v aktuálním pracovním adresáři novou složku s názvem, který jste zadali pro nástroj, zkopíruje do projektu všechny potřebné soubory šablon a nakonfiguruje soubory s názvem vaší společnosti a nástroje.
Potom změňte adresář do složky a pak nainstalujte požadované místní závislosti spuštěním následujícího příkazu:
npm install
Jakmile se tento příkaz dokončí, nastavíte vše, co potřebujete k načtení nového rozšíření do Centra pro správu Windows.
Připojte nástrojové rozšíření k vlastnímu bránovému pluginu
Teď, když jste vytvořili rozšíření se sadou Windows Admin Center SDK, jste připraveni připojit rozšíření nástroje k vlastnímu modulu plug-in brány pomocí následujícího postupu:
- Přidat prázdný modul
- Použijte vlastní plugin brány v rozšíření nástroje
Sestavení a boční načtení rozšíření
Pak své rozšíření sestavte a vlastní cestou načtěte do Centra pro správu Windows. Otevřete příkazové okno, změňte adresář na zdrojový adresář a pak jste připraveni k sestavení.
Sestavení a naservírování s Gulpem:
gulp build gulp serve -p 4201
Port, který zvolíte, musí být aktuálně volný. Ujistěte se, že se nepokoušejte použít port, na kterém je spuštěná služba Windows Admin Center.
Projekt lze načíst do místní instance Centra pro správu Systému Windows pro účely testování připojením místně obsluhovaného projektu do centra Windows Admin Center.
Spuštění Centra pro správu Windows ve webovém prohlížeči
Otevřít ladicí program (F12)
Otevřete konzolu a zadejte následující příkaz:
MsftSme.sideLoad("http://localhost:4201")
Aktualizace webového prohlížeče
Váš projekt se teď zobrazí v seznamu Nástroje s (načtenou stranou) vedle názvu.
Cílení na jinou verzi sady Windows Admin Center SDK
Udržování rozšíření v aktualizovaném stavu se změnami sady SDK a změnami platformy je snadné. Přečtěte si, jak cílit na jinou verzi sady Windows Admin Center SDK.