Zdieľať cez


Licencovanie a transakčné uplatnenie (verzia Public Preview)

Keď vytvoríte vizuály služby Power BI na stiahnutie na lokalite AppSource, môžete teraz spravovať a uplatňovať ich licencie pomocou systémov Spoločnosti Microsoft. Koncový používateľ priraďuje a spravuje licencie pomocou známych nástrojov, ako je napríklad Centrum spravovania služby Microsoft 365, a rozhranie API na licencovanie vám umožňuje tieto licencie vynútiť a zabezpečiť, aby vizuály mohli vykresliť len používatelia s licenciami.

Proces presadzovania licencií

Nasledujúca tabuľka znázorňuje kroky v rámci spravovania licencií na vizuály prostredníctvom spoločnosti Microsoft:

Krok Podrobnosti
Vytvorenie ponuky v Centre pre partnerov Vyberte si, či chcete obchodovať prostredníctvom systému microsoft commerce. Povoľte spoločnosti Microsoft spravovať licencie. Nastavte ceny a dostupnosť.
Pridanie uplatnenia licencie do balíka vizuálov služby Power BI Vytvorte alebo znova nakonfigurujte balík tak, aby používal licenciu runtime služby Power BI, ktorá vynucuje licencovanie podľa prístupu každého používateľa.
Zákazníci objavia vašu ponuku v službe AppSource a zakúpia si predplatné Keď si zákazníci zakúpia vašu ponuku v službe AppSource, získajú aj licencie na vizuál služby Power BI.
Zákazníci spravujú svoje predplatné a priraďujú alebo nepriraďujú používateľské licencie. Zákazníci spravujú predplatné a priraďujú licencie na tieto vizuály a ponuky v Centrum spravovania služby Microsoft 365 rovnako ako v prípade ktoréhokoľvek iného predplatného, napríklad balíka Office alebo služby Power BI.
Vynútenie kontrol modulu runtime Umožnite svojim zákazníkom jednotný zážitok s použitím našich preddeplatných rozhraní API na vynútenie kontrol licencií modulu runtime.
Zobrazenie zostáv na rast paliva Získajte prehľad o výnosoch, informáciách o výplate, objednávke a podrobnostiach o licenciách. Zobrazte informácie o zakúpených, obnovených a zrušených licenciách a objednávok v priebehu času a podľa geografickej polohy.

Rozhranie API licencovania

Rozhranie API na licencovanie umožňuje vývojárom vizuálov služby Power BI vynútiť licencie na vizuály služby Power BI. Rozhranie API podporuje načítanie informácií o licenciách na vizuály služby Power BI, ktoré sú priradené používateľovi služby Power BI. Umožňuje tiež spúšťať oznámenia súvisiace s licenciami, ktoré sa zobrazujú vo vizuáli služby Power BI, a informovať používateľa, že si musí kúpiť chýbajúce licencie. Vizuál by nemal zobrazovať vlastné licenčné vlastnosti. Namiesto toho používa jedno z preddefinovaných oznámení podporovaných službou Power BI, ako je to popísané v nasledujúcich častiach.

Ďalšie informácie o licencovaní služby Power BI nájdete v téme Vynútenie licencie.

Poznámka

Rozhranie API licencovania je k dispozícii od verzie 4.7. Ak chcete zistiť, ktorú verziu používate, pozrite si apiVersion pbiviz.json súbore.

Načítanie plánov služieb vizuálu, ktoré sú priradené aktívnemu používateľovi

Ak chcete získať priradené plány služieb, pridajte volanie do getAvailableServicePlans služby (dostupné cez IVisualLicenseManager). Z hľadiska výkonu sa pokúste načítať licencie raz, ideálne v volaniach constructor init alebo, a výsledok uložte.
Po načítaní licencií sa tieto licencie uložia do vyrovnávacej pamäte na strane hostiteľa služby Power BI počas relácie služby Power BI a všetky ďalšie volania na rovnaké vrátenie údajov vo vyrovnávacej pamäti.

export interface IVisualLicenseManager {
        getAvailableServicePlans(): IPromise<powerbi.extensibility.visual.LicenseInfoResult>;
    }

Načítanie licencií môže byť dlhá operácia, a preto getAvailableServicePlans je volanie asynchrónne volanie a malo by sa spracovať ako také vo vašom kóde.
Ako odpoveď na volanie metódy LicenseInfoResult sa vráti objekt.

export interface LicenseInfoResult {
        plans: ServicePlan[] | undefined;
        isLicenseUnsupportedEnv: boolean; 
        isLicenseInfoAvailable: boolean; 
    }
  • plans – pole plánov služieb zakúpených aktívnym používateľom pre tento vizuál. (Licencie zakúpené pre všetky ostatné vizuály nie sú súčasťou odpovede.)
    ServicePlan obsahuje identifikátor služby (spIdentifier) a jeho stav (ServicePlanState).

    • spIdentifier: hodnota reťazca ID služby vygenerovaná pri konfigurácii plánov ponuky v Centre pre partnerov (pozrite si nasledujúci príklad). Snímka obrazovky zobrazujúca príklad reťazca ID služby.

    • state – enum (ServicePlanState), ktorý predstavuje stav priradených plánov.
      Podporovaný plán služieb uvádza:

      State Description
      Neaktívne Označuje, že licencia nie je aktívna a nemala by sa používať na poskytovanie výhod.
      Aktívne Označuje, že licencia je aktívna a môže sa použiť na poskytovanie výhod.
      Upozornenie Označuje, že licencia je v odklade pravdepodobne z dôvodu porušenia platby.
      Pozastavené Označuje, že licencia je pravdepodobne pozastavená z dôvodu porušenia platby.
      Neznáme Hodnota služby Microsoft Sentinel.

      Iba aktívne stavy a upozornenia predstavujú použiteľnú licenciu. Všetky ostatné štáty by sa mali považovať za nevýznamné pre použiteľnú licenciu.

  • isLicenseUnsupportedEnv – označuje, že vizuál sa vykresľuje v prostredí služby Power BI, ktoré nepodporuje správu alebo uplatňovanie licencií. V súčasnosti nasledujúce prostredia služby Power BI nepodporujú správu licencií ani uplatňovanie licencií:

    • Embedded – publikovať na webe, vkladať PaaS
    • Národné/regionálne cloudy (závisí od všeobecnej podpory transakčnej dostupnosti v národných/regionálnych cloudoch)
    • RS Server (žiadna plánovaná podpora)
    • Exportovanie (PDF\PPT) pomocou rozhrania REST API
  • isLicenseInfoAvailable – udáva, či sa informácie o licenciách dajú načítať. Zlyhanie načítania licencií môže nastať v prípade, že používateľ aplikácie Power BI Desktop nie je prihlásený alebo nie je pripojený na internet (offline). V prípade webu môže načítanie licencií zlyhať z dôvodu dočasného výpadku služby.

Príklad volania getAvailableServicePlans (použitie ID služby z predchádzajúceho obrázka):

private currentUserValidPlans: ServicePlan[] | undefined;
private hasServicePlans: boolean | undefined;
private isLicenseUnsupportedEnv: boolean | undefined;

this.licenseManager.getAvailableServicePlans()
 .then(({ plans, isLicenseUnsupportedEnv, isLicenseInfoAvailable }: LicenseInfoResult) => {
  if (isLicenseInfoAvailable && !isLicenseUnsupportedEnv) {
   this.currentUserValidPlans = plans?.filter(({ spIdentifier, state }) => 
    (state === powerbi.ServicePlanState.Active || state === powerbi.ServicePlanState.Warning)
   );
   this.hasServicePlans = !!currentUserValidPlans?.length;
  }
  this.isLicenseUnsupportedEnv = isLicenseUnsupportedEnv;
 }).catch((err) => {
  this.currentUserValidPlans = undefined;
  this.hasServicePlans = undefined;
  console.log(err);
 });

Upozornenie používateľa, že chýbajú požadované licencie

Platforma Power BI poskytuje niekoľko ihneď zadaných možností, ktoré možno použiť na oznamovanie:

  • Licencie by ste si mali zakúpiť, aby ste mohli využívať všetky možnosti vizuálu.
  • Funkcia konkrétneho vizuálu je blokovaná z dôvodu chýbajúcich licencií
  • Celý vizuál je zablokovaný z dôvodu chýbajúcich licencií
  • Celý vizuál je blokovaný, pretože prostredie služby Power BI, ktoré sa používa, nepodporuje správu licencií\presadzovanie
export interface IVisualLicenseManager {
        notifyLicenseRequired(notificationType: LicenseNotificationType): IPromise<boolean>;
        notifyFeatureBlocked(tooltip: string): IPromise<boolean>;
        clearLicenseNotification(): IPromise<boolean>;
    }

Príklad volania notifyLicenseRequired:

private defaultNotificationType: powerbi.LicenseNotificationType = powerbi.LicenseNotificationType.General;
private isNotificaitonDisplayed: boolean = false;

if (!this.isNotificaitonDisplayed) {
    const notificationType = this.isLicenseUnsupportedEnv ? powerbi.LicenseNotificationType.UnsupportedEnv : this.defaultNotificationType
    this.licenseManager.notifyLicenseRequired(this.getNotificationType())
        .then((value) => {
            this.isNotificaitonDisplayed = value;
        }).catch((err) => {
            console.log(err);
        });
}

Ikona Všeobecné označujúca, že chýba požadovaná licencia

Pomocou notifyLicenseRequired volania s LicenseNotificationType.General zobrazíte ikonu ako súčasť kontajnera vizuálu.
Po spustení sa ikona zachová počas celej životnosti vizuálu, kým clearLicenseNotification sa nevolá alebo notifyLicenseRequired sa nevolá.

Poznámka

Oznámenie LicenseNotificationType.General sa vynucuje len z prostredia, ktoré podporuje správu licencií a pre scenáre úpravy služby Power BI. Volanie v nepodporovanom prostredí alebo v prípade, že zostava je v režime na čítanie alebo na tabuli, nepoužije ikonu a vráti odpoveď false volania.

Príklad zobrazenia vizuálu obsahujúceho ikonu "licencie sú povinné":

Snímka obrazovky zobrazenia vizuálu obsahujúcej *licencie sú povinné* všeobecná ikona.

Snímka obrazovky znázorňujúca zobrazenie vizuálu s *licenciami sa vyžaduje* ikona rozbalenia.

Prekrýva zobrazenie vizuálu chýbajúcim oznámením o licencii

Pomocou volania funkcie notifyLicenseRequired použite funkciu s LicenseNotificationType.VisualIsBlocked cieľom prekrývania zobrazenia vizuálu oznámením, že vizuál je blokovaný, pretože sa našli chýbajúce požadované licencie.
Po spustení sa toto oznámenie zachová počas celej životnosti vizuálu, kým clearLicenseNotification sa nevolá alebo notifyLicenseRequired sa nevolá.

Príklad zobrazenia vizuálu obsahujúceho oznámenie o zablokovaní vizuálu. Aplikácia Power BI Desktop zobrazí iba možnosť Získať licenciu :

Zobrazenie vizuálu obsahujúce *oznámenie je blokované vizuálom*.

Prekrýva zobrazenie vizuálu s oznámením o nepodporovanom prostredí

Použite notifyLicenseRequired volanie s LicenseNotificationType.UnsupportedEnv cieľom prekrývať zobrazenie vizuálu s oznámením, že vizuál je blokovaný, pretože používaná služba Power BI nepodporuje správu licencií\presadzovanie.
Po spustení sa ikona zachová počas celej životnosti vizuálu, kým clearLicenseNotification sa nevolá alebo notifyLicenseRequired sa nevolá.

Poznámka

Oznámenie LicenseNotificationType.UnsupportedEnv sa vynucuje len pri volaní v kontexte nepodporovaného prostredia licencovania. Volaním tejto funkcie v inom prostredí sa oznámenie nepoužije a vráti sa false v odpovedi hovoru.

Príklad zobrazenia vizuálu obsahujúceho oznámenie Nepodporované prostredie:

Snímka obrazovky zobrazenia vizuálu obsahujúceho oznámenie Nepodporované prostredie

Zobrazenie bannera s oznámením, že nie je možné použiť funkciu konkrétneho vizuálu

Pri použití konkrétnej funkcie vizuálu sa vyžadujú licencie, ktoré chýbajú, môžete použiť notifyFeatureBlocked volanie, ktoré zobrazí kontextový pruh ako súčasť kontajnera vizuálu. Banner podporuje aj vlastný popis, ktorý môžete nastaviť a použiť na poskytnutie ďalších informácií o funkcii, ktorá spustila oznámenie.

Poznámka

Oznámenie o zablokovaní funkcie sa vynúti len vtedy, keď platia obidve nasledujúce podmienky:

  • Volá sa z podporovaného licenčného prostredia.
  • Prekrývajúce sa nepoužije (LicenseNotificationType.UnsupportedEnv, LicenseNotificationType.VisualIsBlocked).

Volanie tohto oznámenia v nepodporovanom prostredí nepoužije oznámenie a vráti false odpoveď volania.

Poznámka

Na podporu lokalizovaného prostredia služby Power BI odporúčame zachovať lokalizované verzie popisov, ktoré sa používajú. Ak chcete načítať jazyk miestnych nastavení služby Power BI, použite rozhranie API lokalizácie.

Po spustení sa banner zobrazí 10 sekúnd alebo kým sa nespustí iný banner "feature blocked", alebo kým clearLicenseNotification sa nezavolá (čo je na prvom mieste).

Príklad zobrazenia vizuálu obsahujúceho bannerové oznámenie "feature blocked" (blokované funkcie):

Snímka obrazovky zobrazenia vizuálu obsahujúceho bannerové oznámenie

Testovanie licencovaného vizuálu

Testovanie licencovaného vizuálu sa skončí pred jeho zverejnením:

  • Ak vytvárate úplne novú ponuku, pridajte vizuál ako súkromný plán pre testovacie konto zákazníka. Ponuka je viditeľná len pre toto testovacie konto na nákup. Pomocou tohto konta overte ponuku ešte pred jej zverejnením.
  • Ak je váš vizuál už v službe AppSource k dispozícii a chcete ho inovovať na licencovaný vizuál, nemôžete z neho vytvoriť súkromný plán, pretože skryje vizuál zo služby AppSource a existujúci používatelia k nemu nebudú mať prístup. V súčasnosti neexistuje spôsob, ako otestovať koniec publikovaného vizuálu. Otestujte ho rovnakým spôsobom, ako ste otestovali pôvodný vizuál na lokalite AppSource, keď ste zosmiešnili hodnotu rozhrania API licencovania, aby ste skontrolovali rôzne možnosti.

Dôležité informácie a obmedzenia

  • Popis bannera s funkciami je obmedzený číslom 500 znakov.
  • Popis bannera s funkciami vyžaduje lokalizáciu.
  • Spájanie licencií (t. j. jedna licencia, ktorá sa vzťahuje na viaceré ponuky od toho istého vydavateľa) zatiaľ nie je podporovaná.

Publikovanie vlastného vizuálu služby Power BI

Máte ďalšie otázky? Skúste sa spýtať Komunita Power BI