Dela via


Utveckla ett gateway-plugin-program

Ett gateway-plugin-program för Windows Admin Center möjliggör API-kommunikation från användargränssnittet för ditt verktyg eller din lösning till en målnod. Windows Admin Center är värd för en gatewaytjänst som vidarebefordrar kommandon och skript från gateway-plugin-program som ska köras på målnoder. Gateway-tjänsten kan utökas till att omfatta anpassade gateway-plugin-program som stöder andra protokoll än standardvärdena.

Dessa gateway-plugin-program ingår som standard i Windows Admin Center:

  • Plugin-program för PowerShell-gateway
  • Plugin-program för Windows Management Instrumentation (WMI)

Om du vill kommunicera med ett annat protokoll än PowerShell eller WMI, till exempel med REST, kan du skapa ett eget gateway-plugin-program. Gateway-plugins laddas in i en separat AppDomain från den befintliga gatewayprocessen, men använder samma behörighetsnivå.

Anteckning

Känner du inte till de olika tilläggstyperna? Läs mer om utökningsarkitektur och tilläggstyper.

Viktig

Windows Admin Center SDK och utvecklarverktyg har ännu inte uppdaterats för att stödja utveckling av gateway-plugin-program som är kompatibla med Windows Admin Center moderniserad gateway. Om du följer den här guiden resulterar det inte i ett .NET 8-tillägg som är kompatibelt med den moderniserade gatewayen.

Om du är intresserad av att utveckla ett gateway-plugin-program för den moderniserade gatewayen eller uppgradera ditt befintliga gateway-plugin-program skickar du ett e-postmeddelande till wacextensionrequest@microsoft.com.

Gateway-plugin-program som utvecklats i .NET 6 medan serverdelsuppdateringen var i förhandsversion kanske inte fungerar korrekt med den senaste versionen av Windows Admin Center på grund av icke-bakåtkompatibla ändringar från .NET 6 till .NET 8. Vi rekommenderar att du uppgraderar tillägget till .NET 8 så snart som möjligt.

Förbereda din miljö

Om du inte redan har gjort det, förbered din miljö genom att installera beroenden och globala förutsättningar som krävs för alla projekt.

Skapa ett gateway-plugin-program (C#-bibliotek)

Skapa ett anpassat gateway-plugin-program genom att skapa en ny C#-klass som implementerar IPlugIn-gränssnittet från Microsoft.ManagementExperience.FeatureInterfaces namnrymd.

Not

Det IFeature gränssnittet, som är tillgängligt i tidigare versioner av SDK:t, flaggas nu som föråldrat. All utveckling av gateway-plugin-program bör använda IPlugIn (eller om du vill kan du använda den abstrakta klassen HttpPlugIn).

Ladda ned exempel från GitHub

För att komma igång snabbt med ett anpassat gateway-plugin-program kan du klona eller ladda ned en kopia av vårt exempel på C#-plugin-projekt från vår Windows Admin Center SDK GitHub-webbplats.

Lägga till innehåll

Lägg till nytt innehåll i din klonade kopia av exempel på C#-plugin-projektet projekt (eller ditt eget projekt) för att innehålla dina anpassade API:er och skapa sedan din anpassade gateway-plugin-DLL-fil som ska användas i nästa steg.

Distribuera plugin-program för testning

Testa din anpassade gateway-plugin-DLL genom att läsa in den i gatewayprocessen för Windows Admin Center.

Windows Admin Center söker efter alla plugin-program i en plugins mapp i mappen Programdata för den aktuella datorn (med hjälp av CommonApplicationData-värdet för miljö.SpecialFolder-uppräkning). På Windows 10 är den här platsen C:\ProgramData\Server Management Experience. Om mappen plugins inte finns än kan du skapa mappen själv.

Not

Du kan åsidosätta plugin-platsen i en felsökningsversion genom att uppdatera konfigurationsvärdet "StaticsFolder". Om du felsöker lokalt finns den här inställningen i App.Config för skrivbordslösningen.

I mappen plugins (i det här exemplet C:\ProgramData\Server Management Experience\plugins)

  • Skapa en ny mapp med samma namn som egenskapsvärdet på Name hos Feature i din anpassade gateway-insticksmodul-DLL (i vårt exempelprojekt är Name "Sample Uno")
  • Kopiera DLL-filen för ditt anpassade gateway-plugin-program till den nya mappen
  • Starta om Windows Admin Center-processen

När Windows Admin-processen har startats om kan du använda API:er i din anpassade gateway-plugin-DLL-fil genom att skicka en GET, PUT, PATCH, DELETE eller POST till http(s)://{domain|localhost}/api/nodes/{node}/features/{feature name}/{identifier}

Valfritt: Koppla till plugin-program för felsökning

I Visual Studio 2017 går du till felsökningsmenyn och väljer "Anslut till process". I nästa fönster bläddrar du igenom listan Tillgängliga processer och väljer SMEDesktop.exeoch väljer sedan "Bifoga". När felsökningsprogrammet startar kan du placera en brytpunkt i funktionskoden och sedan träna genom URL-formatet. För vårt exempelprojekt (funktionsnamn: "Sample Uno") är URL:en: "<http://localhost:6516/api/nodes/fake-server.my.domain.com/features/Sample%20Uno>"

Skapa ett verktygstillägg med Windows Admin Center SDK

Nu måste vi skapa ett verktygstillägg som du kan anropa ditt anpassade gateway-plugin-program från. Skapa eller bläddra till en mapp där du vill lagra dina projektfiler, öppna en kommandotolk och ange mappen som arbetskatalog. Använd Windows Admin Center SDK som installerades tidigare och skapa ett nytt tillägg med följande syntax:

wac create --company "{!Company Name}" --tool "{!Tool Name}"
Värde Förklaring Exempel
{!Company Name} Företagets namn (med blanksteg) Contoso Inc
{!Tool Name} Verktygsnamnet (med blanksteg) Manage Foo Works

Här är ett exempel på användning:

wac create --company "Contoso Inc" --tool "Manage Foo Works"

Det här kommandot skapar en ny mapp i den aktuella arbetskatalogen med det namn som du angav för verktyget, kopierar alla nödvändiga mallfiler till projektet och konfigurerar filerna med företagets och verktygets namn.

Ändra sedan katalogen till mappen och installera sedan nödvändiga lokala beroenden genom att köra följande kommando:

npm install

När det här kommandot har slutförts konfigureras du med allt du behöver för att läsa in det nya tillägget i Administrationscenter för Windows.

Ansluta ditt verktygstillägg till ditt anpassade gateway-plugin-program

Nu när du har skapat ett tillägg med Windows Admin Center SDK är du redo att ansluta ditt verktygstillägg till ditt anpassade gateway-plugin-program genom att följa dessa steg:

Bygg och sidladda ditt tillägg

Bygg sedan och sidoinstallera tillägget i Windows Admin Center. Öppna ett kommandofönster, ändra katalogen till källkatalogen och sedan är du redo att skapa.

  • Skapa och servera med gulp:

    gulp build
    gulp serve -p 4201
    

Den port du väljer måste för närvarande vara kostnadsfri. Kontrollera att du inte försöker använda porten som Windows Administrationscenter körs på.

Projektet kan sidladdas till en lokal instans av Windows Administrationscenter för testning genom att ansluta det lokalt tillgängliga projektet till Windows Administrationscenter.

  • Starta Windows Admin Center i en webbläsare

  • Öppna felsökningsprogrammet (F12)

  • Öppna konsolen och skriv följande kommando:

    MsftSme.sideLoad("http://localhost:4201")
    
  • Uppdatera webbläsaren

Projektet visas nu i listan Verktyg med (sida inläst) bredvid namnet.

Rikta in dig på en annan version av Windows Admin Center SDK

Det är enkelt att hålla tillägget uppdaterat med SDK-ändringar och plattformsändringar. Läs mer om hur du rikta in dig på en annan version av Windows Admin Center SDK.