Licencelés és tranzakciós kényszerítés (nyilvános előzetes verzió)
Amikor Power BI-vizualizációkat hoz létre az AppSource-on való letöltéshez, mostantól microsoftos rendszerekkel kezelheti és kényszerítheti a licenceiket. A végfelhasználó a licenceket olyan ismerős eszközökkel rendeli hozzá és kezeli, mint például a Microsoft 365 Felügyeleti központ, és a licencelési API lehetővé teszi a licencek kikényszerítését, és biztosítja, hogy csak a licenccel rendelkező felhasználók jeleníthessék meg a vizualizációkat.
Licencérvényesítési folyamat
Az alábbi táblázat a vizualizációs licencek Microsofton keresztüli kezelésének lépéseit mutatja be:
Lépés | Részletek |
---|---|
Ajánlat létrehozása a Partnerközpontban | Dönthet úgy, hogy a Microsoft kereskedelmi rendszerén keresztül bonyolítja le a tranzakciót. Engedélyezze a Microsoftnak a licencek kezelését. Állítsa be a díjszabást és a rendelkezésre állást. |
Licencérvényesítés hozzáadása a Power BI-vizualizációs csomaghoz | Hozza létre vagy konfigurálja újra a csomagot a Power BI futtatókörnyezeti licenc használatára, amely az egyes felhasználók hozzáférésének megfelelően kényszeríti a licencelést. |
Az ügyfelek felfedezik az ajánlatot az AppSource-ban, és megvásárolnak egy előfizetést | Amikor az ügyfelek megvásárolják az ajánlatot az AppSource-ban, licenceket is kapnak a Power BI-vizualizációhoz. |
Az ügyfelek kezelik az előfizetéseiket, és felhasználói licenceketrendelnek hozzá/osztanak ki | Az ügyfelek ugyanúgy kezelik az előfizetéseket, és licenceket rendelnek ezekhez a vizualizációkhoz és ajánlatokhoz a Microsoft 365 Felügyeleti központ, mint bármely más előfizetésükhöz, például az Office-hoz vagy a Power BI-hoz. |
Futtatókörnyezet-ellenőrzések kényszerítése | A helyszíni API-k használatával egységes felhasználói élményt biztosíthat ügyfeleinek a futtatókörnyezeti licencellenőrzések kikényszerítéséhez. |
Jelentések megtekintése az üzemanyag-növekedésről | Betekintést nyerhet a bevételbe, a kifizetési információkba, valamint a rendelési és licencadatokba. A megvásárolt, megújított és lemondott licencekre és megrendelésekre vonatkozó információk megtekintése az idő és a földrajzi hely szerint. |
Licencelési API
A Licencelési API lehetővé teszi a Power BI-vizualizációk fejlesztői számára a Power BI-vizualizációs licencek kikényszerítését. Az API támogatja a Power BI-felhasználóhoz rendelt Power BI-vizualizációs licencek információinak lekérését. Emellett lehetővé teszi a Power BI-vizualizáción megjelenő licenceléssel kapcsolatos értesítések aktiválását, és tájékoztatja a felhasználót arról, hogy meg kell vásárolnia a hiányzó licenceket. A vizualizációnak nem szabad saját licencelési UX-t megjelenítenie, hanem a Power BI által támogatott előre definiált értesítések egyikét kell használnia az alábbi szakaszokban leírtak szerint.
További információ a Power BI-licencelésről: licenckényszerítés.
Feljegyzés
A licencelési API a 4.7-es verziótól érhető el. Ha meg szeretné tudni, hogy melyik verziót használja, ellenőrizze a apiVersion
pbiviz.json fájlban.
A vizualizáció aktív felhasználóhoz rendelt szolgáltatáscsomagjainak lekérése
A szolgáltatáscsomagok hozzárendeléséhez adjon hozzá egy hívást getAvailableServicePlans
(amely a következőn keresztül IVisualLicenseManager
érhető el).
Teljesítmény szempontjából próbálja meg egyszer lekérni a licenceket, lehetőleg a hívásokban vagy a constructor
init
hívásokban, és mentse az eredményt.
A licencek lekérése után a Rendszer gyorsítótárazza őket a Power BI gazdagép oldalán a Power BI-munkamenet során, és az ugyanahhoz a híváshoz érkező további hívások a gyorsítótárazott adatokat adnak vissza.
export interface IVisualLicenseManager {
getAvailableServicePlans(): IPromise<powerbi.extensibility.visual.LicenseInfoResult>;
}
A licencek lekérése hosszú művelet lehet, ezért a getAvailableServicePlans
hívás aszinkron hívás, és a kódban is így kell kezelni.
A metódus meghívására adott válaszként a rendszer LicenseInfoResult
visszaadja az objektumot.
export interface LicenseInfoResult {
plans: ServicePlan[] | undefined;
isLicenseUnsupportedEnv: boolean;
isLicenseInfoAvailable: boolean;
}
plans
- az aktív felhasználó által a vizualizációhoz vásárolt szolgáltatáscsomagok tömbje. (A többi vizualizációhoz vásárolt licencek nem szerepelnek a válaszban.)
A ServicePlan tartalmazza a szolgáltatásazonosítót (spIdentifier) és állapotát (ServicePlanState).spIdentifier: az ajánlatcsomagok Partnerközpontban való konfigurálásakor létrehozott szolgáltatásazonosító sztringértéke (lásd az alábbi példát)
state – enum (ServicePlanState), amely a hozzárendelt tervek állapotát jelöli.
A támogatott szolgáltatáscsomag állapotai:Állapot Leírás Inaktív Azt jelzi, hogy a licenc nem aktív, és nem használható előnyök kiépítéséhez. Aktív Azt jelzi, hogy a licenc aktív, és használható az előnyök kiépítéséhez. Figyelmeztetés Azt jelzi, hogy a licenc türelmi időszakban van, valószínűleg a fizetés megsértése miatt. Felfüggesztve Azt jelzi, hogy a licenc felfüggesztése valószínűleg a fizetés megsértése miatt történik. Ismeretlen Microsoft Sentinel-érték. Csak az aktív és figyelmeztető állapotok jelölnek használható licencet. Minden más állapotot úgy kell kezelni, hogy az nem eredményez használható licencet.
isLicenseUnsupportedEnv
- azt jelzi, hogy a vizualizáció olyan Power BI-környezetben jelenik meg, amely nem támogatja a licencek kezelését vagy érvényesítését. A következő Power BI-környezetek jelenleg nem támogatják a licenckezelést vagy a licencérvényesítést:isLicenseInfoAvailable
– Azt jelzi, hogy a licencadatok lekérhetők-e. A licencek lekérésének hibája akkor fordulhat elő, ha a Power BI Desktop felhasználója nincs bejelentkezve, vagy nem csatlakozik az internethez (offline). A web esetében a licencek lekérése egy ideiglenes szolgáltatáskimaradás miatt meghiúsulhat.
Példa a vizualizáció felhasználói szolgáltatási csomagjainak lekérésére getAvailableServicePlans
:
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);
});
Feljegyzés
Ez a példa csak azt mutatja be, hogyan ellenőrizheti, hogy a felhasználó rendelkezik-e érvényes tervekkel ehhez a vizualizációhoz. A plans
tömb különböző spIdentifier
értékeket tartalmazhat, és az egyes azonosítók többször is megjelenhetnek különböző állapotokkal.
Értesítse a felhasználót, hogy hiányoznak a szükséges licencek
A Power BI platform számos külső szolgáltatást biztosít, amelyek az értesítéshez használhatók:
- A licenceket úgy kell megvásárolni, hogy teljes mértékben kihasználhassák a vizualizáció képességeit
- Egy adott vizualizáció szolgáltatása a hiányzó licencek miatt le van tiltva
- Hiányzó licencek miatt a teljes vizualizáció le van tiltva
- A teljes vizualizáció le van tiltva, mert a használatban lévő Power BI-környezet nem támogatja a licenckezelést\kényszerítés
export interface IVisualLicenseManager {
notifyLicenseRequired(notificationType: LicenseNotificationType): IPromise<boolean>;
notifyFeatureBlocked(tooltip: string): IPromise<boolean>;
clearLicenseNotification(): IPromise<boolean>;
}
Példa hívásra 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);
});
}
A szükséges licenc hiányát jelző általános ikon
A notifyLicenseRequired
hívással LicenseNotificationType.General
megjeleníthet egy ikont a vizualizáció tárolójának részeként.
Az aktiválás után az ikon a vizualizáció teljes élettartama alatt megmarad, amíg meg nem clearLicenseNotification
hívja őket notifyLicenseRequired
.
Feljegyzés
Az LicenseNotificationType.General
értesítés csak olyan környezetből lesz kényszerítve, amely támogatja a licenckezelést és a Power BI Edit-forgatókönyveket. Ha ezt nem támogatott környezetben hívja meg, vagy ha a jelentés olvasási módban vagy irányítópulton van, nem alkalmazza az ikont, és a hívás válaszában tér vissza false
.
Példa a "licencek kötelezőek" általános ikont tartalmazó vizualizációs megjelenítésre:
A vizualizáció megjelenítésének átfedése hiányzó licencértesítéssel
A notifyLicenseRequired
hívással LicenseNotificationType.VisualIsBlocked
átfedheti a vizualizációt, és értesítést jeleníthet meg arról, hogy a vizualizáció le van tiltva, mivel a szükséges licencek hiányoznak.
Az aktiválást követően ez az értesítés a vizualizáció teljes élettartama alatt megmarad, amíg meg nem clearLicenseNotification
hívja őket notifyLicenseRequired
.
Példa a vizualizáció letiltott értesítését tartalmazó vizualizációs megjelenítésre. A Power BI Desktop csak a Licenc lekérése lehetőséget jeleníti meg:
A vizualizáció megjelenítésének átfedése nem támogatott környezeti értesítéssel
Hívással notifyLicenseRequired
LicenseNotificationType.UnsupportedEnv
átfedheti a vizualizáció megjelenítését egy értesítéssel, amely szerint a vizualizáció le van tiltva, mivel a használatban lévő Power BI nem támogatja a licenckezelést\kényszerítés.
Az aktiválás után az ikon a vizualizáció teljes élettartama alatt megmarad, amíg meg nem clearLicenseNotification
hívja őket notifyLicenseRequired
.
Feljegyzés
Az LicenseNotificationType.UnsupportedEnv
értesítés csak akkor lesz érvényesítve, ha a licencelési környezet nem támogatott környezetében van meghívva. Ha ezt bármely más környezetben hívja meg, az nem alkalmazza az értesítést, és a hívás válaszában adja vissza false
.
Példa a "Nem támogatott környezet" értesítést tartalmazó vizualizációs megjelenítésre:
Szalagcím megjelenítése, amely értesíti, hogy egy adott vizualizáció funkciói nem alkalmazhatók
Egy adott vizualizáció funkcióinak alkalmazásakor hiányzóként talált licencekre van szükség, használhatja azt a notifyFeatureBlocked
hívást, amely egy előugró szalagcímet jelenít meg a vizualizáció tárolójának részeként. A szalagcím egy egyéni elemleírást is támogat, amellyel további információkat adhat meg az értesítést kiváltó funkcióról.
Feljegyzés
A szolgáltatás letiltott értesítése csak akkor lesz kényszerítve, ha mindkét feltétel teljesül:
- Támogatott licencelési környezetből hívják
- A blokkolási átfedések nincsenek alkalmazva (
LicenseNotificationType.UnsupportedEnv
,LicenseNotificationType.VisualIsBlocked
).
Az értesítés nem támogatott környezetben való meghívása nem alkalmazza az értesítést, és a hívás válaszában adja vissza false
.
Feljegyzés
A honosított Power BI-környezet támogatásához javasoljuk a használt elemleírások honosított verzióinak karbantartását. A Power BI területi nyelvének lekéréséhez használja a Honosítási API-t .
Az aktiválás után a szalagcím 10 másodpercig jelenik meg, vagy amíg más "funkció blokkolva" szalagcímet nem aktivál, vagy amíg meg nem clearLicenseNotification
hívják (bármi is legyen az első).
Példa a "szolgáltatás letiltva" szalagcímértesítést tartalmazó vizualizációs megjelenítésre:
Licencelt vizualizáció tesztelése
Licenccel rendelkező vizualizációk tesztelése a nyilvános elérhetővé tétel előtt:
- Ha teljesen új ajánlatot hoz létre, adja hozzá a vizualizációt privát csomagként egy teszt ügyfélfiókhoz. Az ajánlat csak ebben a tesztfiókban látható a vásárláshoz. Ezzel a fiókkal ellenőrizheti az ajánlatot, mielőtt közzétennénk.
- Ha a vizualizáció már elérhető az AppSource-ban, és licencelt vizualizációra szeretné frissíteni, nem teheti privát csomagként, mert az elrejti a vizualizációt az AppSource-ból, és a meglévő felhasználók nem férnek hozzá. Jelenleg nincs mód a közzétett vizualizációk végpontok közötti tesztelésére. Tesztelje ugyanúgy, ahogyan az eredeti vizualizációt az AppSource-on tesztelte, a licencelési API-érték utánzásával ellenőrizze a különböző lehetőségeket.
Szempontok és korlátozások
- A funkciószalag elemleírását 500 karakter korlátozza.
- A funkciószalag elemleírásához honosításra van szükség.
- A licenccsomagolás (vagyis egy olyan licenc, amely ugyanazon közzétevőtől származó több ajánlatot is lefed) még nem támogatott.
Kapcsolódó tartalom
Egyéni Power BI-vizualizáció közzététele
Van még esetleg kérdése? Kérdezze meg a Power BI-közösség