Självstudie: Automatisera konfigurationen av mallappinstallation med hjälp av en Azure-funktion
Mallappar är ett bra sätt för kunder att börja få insikter från sina data. Mallappar får igång dem snabbt genom att ansluta dem till deras data. Mallapparna ger kunderna färdiga rapporter som de kan anpassa om de så önskar.
Kunderna är inte alltid bekanta med information om hur de ansluter till sina data. Att behöva ange den här informationen när de installerar en mallapp kan vara en smärtpunkt för dem.
Om du är en datatjänstleverantör och har skapat en mallapp som hjälper dina kunder att komma igång med sina data i tjänsten kan du göra det enklare för dem att installera mallappen. Du kan automatisera konfigurationen av mallappens parametrar.
När kunden loggar in på portalen väljer de en särskild länk som du har förberett. Den här länken:
- Startar automatiseringen, som samlar in den information som behövs.
- Förkonfigurerar mallappparametrarna.
- Omdirigerar kunden till sitt Power BI-konto där de kan installera appen.
Allt de behöver göra är att välja Installera och autentisera mot sin datakälla, och de är bra att gå!
Kundupplevelsen visas här.
I den här självstudien använder du ett azure functions-exempel för automatisk installation som vi har skapat för att förkonfigurera och installera mallappen. Det här exemplet har avsiktligt hållits enkelt i demonstrationssyfte. Den kapslar in konfigurationen av en Azure-funktion för att använda Power BI-API för att installera en mallapp och konfigurera den automatiskt för dina användare.
Mer information om det allmänna automatiseringsflödet och de API:er som appen använder finns i Automatisera konfigurationen av en mallappinstallation.
Vårt enkla program använder en Azure-funktion. Mer information om Azure Functions finns i Azure Functions-dokumentationen.
Grundläggande flöde
Följande grundläggande flöde visar vad programmet gör när kunden startar det genom att välja länken i portalen.
Användaren loggar in på ISV-portalen och väljer den angivna länken. Den här åtgärden initierar flödet. ISV-portalen förbereder den användarspecifika konfigurationen i det här skedet.
ISV:en hämtar en apptoken baserat på ett huvudnamn för tjänsten (endast apptoken) som är registrerad i ISV:ens klientorganisation.
Med Hjälp av Power BI REST-API:er skapar ISV en installationsbiljett som innehåller den användarspecifika parameterkonfigurationen som har förberetts av ISV:en.
ISV omdirigerar användaren till Power BI med hjälp av en
POST
omdirigeringsmetod som innehåller installationsbiljetten.Användaren omdirigeras till sitt Power BI-konto med installationsbiljetten och uppmanas att installera mallappen. När användaren väljer Installera installeras mallappen åt dem.
Kommentar
Medan parametervärden konfigureras av ISV i processen för att skapa installationsbiljetten, tillhandahålls datakällans relaterade autentiseringsuppgifter endast av användaren i de sista stegen i installationen. Det här arrangemanget förhindrar att de exponeras för tredje part och säkerställer en säker anslutning mellan användaren och mallappens datakällor.
Förutsättningar
- Din egen Microsoft Entra-klientorganisation har konfigurerats. Anvisningar om hur du konfigurerar en finns i Skapa en Microsoft Entra-klientorganisation.
- Ett huvudnamn för tjänsten (endast apptoken) som registrerats i föregående klientorganisation.
- En parametriserad mallapp som är redo för installation. Mallappen måste skapas i samma klientorganisation där du registrerar ditt program i Microsoft Entra-ID. Mer information finns i Mallappstips eller Skapa en mallapp i Power BI.
- För att kunna testa ditt automationsarbetsflöde lägger du till tjänstens huvudnamn på mallappens arbetsyta som administratör.
- En Power BI Pro-licens. Om du inte har registrerat dig för Power BI Pro så registrerar du dig för en kostnadsfri utvärderingsversion innan du börjar.
Konfigurera utvecklingsmiljön för automatisering av mallappar
Innan du fortsätter att konfigurera programmet följer du anvisningarna i Snabbstart: Skapa en Azure Functions-app med Azure App Configuration för att utveckla en Azure-funktion tillsammans med en Azure-appkonfiguration. Skapa din appkonfiguration enligt beskrivningen i artikeln.
Registrera ett program i Microsoft Entra-ID
Skapa ett huvudnamn för tjänsten enligt beskrivningen i Bädda in Power BI-innehåll med tjänstens huvudnamn och en programhemlighet.
Se till att registrera programmet som en webbapp på serversidan. Du registrerar ett webbprogram på serversidan för att skapa en programhemlighet.
Spara program-ID(ClientID) och programhemlighet (ClientSecret) för senare steg.
Du kan gå igenom konfigurationsverktyget för inbäddning för att snabbt komma igång med att skapa en appregistrering. Om du använder power BI-appregistreringsverktyget väljer du alternativet Bädda in för dina kunder .
Lägg till tjänstens huvudnamn på mallappens arbetsyta som administratör så att du kan testa ditt automationsarbetsflöde.
Förberedelse av mallapp
När du har skapat mallappen och den är redo för installation sparar du följande information för nästa steg:
App-ID, paketnyckel och ägar-ID som de visas i installations-URL:en i slutet av definiera egenskaperna för mallappsprocessen när appen skapades.
Du kan också få samma länk genom att välja Hämta länk i mallappens versionshanteringsfönster.
Parameternamn som de definieras i mallappens semantiska modell. Parameternamn är skiftlägeskänsliga strängar. De kan också hämtas från fliken Parameter Inställningar när du definierar egenskaperna för mallappen eller från de semantiska modellinställningarna i Power BI.
Kommentar
Du kan testa ditt förkonfigurerade installationsprogram i mallappen om mallappen är redo för installation, även om den inte är offentligt tillgänglig på AppSource ännu. För att användare utanför klientorganisationen ska kunna använda det automatiserade installationsprogrammet för att installera mallappen måste mallappen vara offentligt tillgänglig på Marknadsplatsen för Power BI-appar. Innan du distribuerar mallappen med hjälp av det automatiska installationsprogram som du skapar bör du publicera den i Partnercenter.
Installera och konfigurera mallappen
I det här avsnittet använder du ett Azure Functions-exempel för automatisk installation som vi skapade för att förkonfigurera och installera mallappen. Det här exemplet har avsiktligt hållits enkelt i demonstrationssyfte. Det gör att du kan använda en Azure-funktion och Azure App Configuration för att enkelt distribuera och använda det automatiserade installations-API:et för dina mallappar.
Ladda ned Visual Studio (version 2017 eller senare)
Ladda ned Visual Studio (version 2017 eller senare). Se till att ladda ned det senaste NuGet-paketet.
Ladda ned azure functions-exemplet för automatisk installation
Ladda ned azure functions-exemplet för automatisk installation från GitHub för att komma igång.
Konfigurera din Azure-appkonfiguration
Om du vill köra det här exemplet måste du konfigurera azure-appkonfigurationen med de värden och nycklar som beskrivs här. Nycklarna är program-ID, programhemlighet och mallappens AppId-, PackageKey- och OwnerId-värden. Se följande avsnitt för information om hur du hämtar dessa värden.
Nycklarna definieras också i filen Constants.cs .
Konfigurationsnyckel | Innebörd |
---|---|
TemplateAppInstall:Application:AppId | AppId från installations-URL :en |
TemplateAppInstall:Application:PackageKey | PackageKey från installations-URL :en |
TemplateAppInstall:Application:OwnerId | OwnerId från installations-URL :en |
TemplateAppInstall:ServicePrincipal:ClientId | Program-ID för tjänstens huvudnamn |
TemplateAppInstall:ServicePrincipal:ClientSecret | Programhemlighet för tjänstens huvudnamn |
Filen Constants.cs visas här.
Hämta mallappens egenskaper
Fyll i alla relevanta mallappegenskaper som de definieras när appen skapas. Dessa egenskaper är mallappens AppId-, PackageKey- och OwnerId-värden .
Följ dessa steg för att hämta föregående värden:
Logga in på Power BI.
Gå till programmets ursprungliga arbetsyta.
Öppna fönstret Versionshantering .
Välj appversionen och hämta installationslänken.
Kopiera länken till Urklipp.
Den här installations-URL:en innehåller de tre URL-parametrar vars värden du behöver. Använd värdena appId, packageKey och ownerId för programmet. En exempel-URL liknar det som visas här.
https://app.powerbi.com/Redirect?action=InstallApp&appId=3c386...16bf71c67&packageKey=b2df4b...dLpHIUnum2pr6k&ownerId=72f9...1db47&buildVersion=5
Hämta program-ID:t
Fyll i applicationId-informationen med program-ID:t från Azure. ApplicationId-värdet används av programmet för att identifiera sig för de användare som du begär behörigheter från.
Följ dessa steg för att hämta program-ID:t:
Logga in på Azure-portalen.
I den vänstra rutan väljer du Alla tjänster> Appregistreringar.
Välj det program som behöver program-ID :t.
Det finns ett program-ID som anges som ett GUID. Använd det här program-ID: t som applicationId-värdet för programmet.
Hämta programhemligheten
Fyll i ApplicationSecret-informationen från avsnittet Nycklar i avsnittet Appregistreringar i Azure. Det här attributet fungerar när du använder tjänstens huvudnamn.
Följ dessa steg för att hämta programhemligheten:
Logga in på Azure-portalen.
I den vänstra rutan väljer du Alla tjänster> Appregistreringar.
Välj det program som behöver använda programhemligheten.
Välj Certifikat och hemligheter under Hantera.
Välj Nya klienthemligheter.
Ange ett namn i rutan Beskrivning och välj en varaktighet. Välj sedan Spara för att hämta värdet för ditt program. När du stänger fönstret Nycklar när du har sparat nyckelvärdet visas fältet Värde endast som dolt. Då kan du inte hämta nyckelvärdet. Om du förlorar nyckelvärdet skapar du ett nytt i Azure-portalen.
Testa funktionen lokalt
Följ stegen som beskrivs i Kör funktionen lokalt för att köra funktionen.
Konfigurera portalen så att den skickar en POST
begäran till funktionens URL. Ett exempel är POST http://localhost:7071/api/install
. Begärandetexten ska vara ett JSON-objekt som beskriver nyckel/värde-par. Nycklar är parameternamn enligt definitionen i Power BI Desktop. Värden är önskade värden som ska anges för varje parameter i mallappen.
Kommentar
I produktion härleds parametervärden för varje användare av portalens avsedda logik.
Det önskade flödet bör vara:
- Portalen förbereder begäran, per användare eller session.
- Begäran
POST /api/install
utfärdas till din Azure-funktion. Begärandetexten består av nyckel/värde-par. Nyckeln är parameternamnet. Värdet är det önskade värde som ska anges. - Om allt är korrekt konfigurerat bör webbläsaren automatiskt omdirigera till kundens Power BI-konto och visa det automatiserade installationsflödet.
- Vid installationen anges parametervärden som konfigurerade i steg 1 och 2.
Relaterat innehåll
Publicera projektet till Azure
Följ anvisningarna i Azure Functions-dokumentationen för att publicera projektet till Azure. Sedan kan du integrera api:er för automatisk installation av mallappar i din produkt och börja testa dem i produktionsmiljöer.