sql >> Database teknologi >  >> NoSQL >> MongoDB

Power BI-integration med Spring Angular

Først skal du vide, at der er to tilstande til indlejring af Power BI - user owns data og app owns data . Med den første tilstand vil brugeren ved indlejring godkende sig selv ved hjælp af sin egen Power BI Pro-konto, dvs. hver af dine brugere har brug for Power BI Pro-licens. Med den senere behøver du kun én "masterkonto", som vil blive brugt til godkendelse. Forskellene i implementeringen er ikke store, så jeg vil beskrive app owns data .

Du skal gøre følgende:

  • Registrer en applikation - gå til dev.powerbi.com/apps og registrere en indfødt applikation. Vælg, hvilke tilladelser du vil give det (hvis du ikke er sikker, skal du blot give dem alle til dine første tests). Kopiér guiden - dette er app-id'et, også kaldet klient-id.

  • Næste trin er at godkende fra din applikation og få et adgangstoken. Brug Azure Active Directory Authentication Library ( ADAL) for det - kald nogle af acquireToken metoder til AuthenticationContext klasse.

  • Brug dette adgangstoken til at kalde Power BI REST API og få embedUrl af det element, du vil indlejre, f.eks. rapport .

  • Brug Power BI JavaScript-klient for rent faktisk at indlejre dette element. Du skal initialisere en embed-konfigurationsklasse og videregive oplysninger om elementtype (rapport, dashboard, flise), hvor man kan finde det (embedUrl), godkendelse (adgangstoken), nogle andre konfigurationsmuligheder (vis eller skjul filterrude, navigation osv.), filtre, der skal anvendes og snart. I tilfælde af at du vil bruge adgangstokenet erhvervet ovenfor, skal du indstille tokenType at være AAD . Dette token har mange privilegier, så af sikkerhedsmæssige årsager kan du bruge Embed token i stedet for. I dette tilfælde skal du bruge adgangstokenet til at kalde REST API igen (f.eks. Rapporter GenerateTokenInGroup ).

  • Ring til powerbi.embed JavaScript-klientens metode videregive den indlejrede konfiguration for at visualisere dette Power BI-element i din app.

Her er nogle ressourcer, som du bør læse:




  1. Timeout-fejl ved forbindelse til CosmosDB med MongoDB API

  2. Mongoose Model.find er ikke en funktion?

  3. MongoDB $avg Aggregation Pipeline Operator

  4. Gem referencefelt mongoengine