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).
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é":
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 :
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:
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):
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á.
Súvisiaci obsah
Publikovanie vlastného vizuálu služby Power BI
Máte ďalšie otázky? Skúste sa spýtať Komunita Power BI