การบังคับใช้สิทธิ์และการแปล (ตัวอย่างสาธารณะ)
เมื่อคุณสร้างวิชวล Power BI สําหรับการดาวน์โหลดบน AppSource ตอนนี้คุณสามารถจัดการและบังคับใช้สิทธิ์การใช้งานโดยใช้ระบบ Microsoft ได้แล้ว ผู้ใช้ปลายทางจะกําหนดและจัดการสิทธิ์การใช้งานโดยใช้เครื่องมือที่คุ้นเคย เช่น ศูนย์การจัดการ Microsoft 365 และ API การให้สิทธิ์การใช้งานช่วยให้คุณสามารถบังคับใช้สิทธิ์การใช้งานเหล่านี้และตรวจสอบให้แน่ใจว่ามีเพียงผู้ใช้ที่ได้รับอนุญาตเท่านั้นที่สามารถแสดงวิชวลได้
กระบวนการบังคับใช้สิทธิ์การใช้งาน
ตารางต่อไปนี้แสดงขั้นตอนที่เกี่ยวข้องในการจัดการสิทธิ์การใช้งานวิชวลของคุณผ่านทาง Microsoft:
ขั้นตอน | รายละเอียด |
---|---|
สร้างข้อเสนอ ใน Partner Center | เลือกที่จะทําธุรกรรมผ่านระบบการค้าของ Microsoft เปิดใช้งาน Microsoft เพื่อจัดการสิทธิ์การใช้งาน ตั้งค่าการกําหนดราคาและความพร้อมใช้งาน |
เพิ่มการบังคับใช้สิทธิ์การใช้งานไปยังแพคเกจวิชวล Power BI ของคุณ | สร้างหรือกําหนดค่าแพคเกจของคุณใหม่เพื่อใช้สิทธิ์การใช้งานรันไทม์ Power BI ซึ่งบังคับใช้สิทธิ์การใช้งานตามการเข้าถึงของผู้ใช้แต่ละราย |
ลูกค้าค้นพบข้อเสนอของคุณใน AppSource และซื้อการสมัครใช้งาน | เมื่อลูกค้าซื้อข้อเสนอของคุณใน AppSource พวกเขาจะได้รับสิทธิ์การใช้งานสําหรับวิชวล Power BI ด้วยเช่นกัน |
ลูกค้าจัดการการสมัครใช้งานและมอบหมาย/ยกเลิกการกําหนดสิทธิ์การใช้งานของผู้ใช้ | ลูกค้าจัดการการสมัครใช้งาน และมอบหมายสิทธิ์การใช้งานสําหรับวิชวลเหล่านี้ และข้อเสนอในศูนย์การจัดการ Microsoft 365 เช่นเดียวกับที่พวกเขาทําสําหรับการสมัครสมาชิกอื่น ๆ ของพวกเขา เช่น Office หรือ Power BI |
บังคับใช้การตรวจสอบรันไทม์ | ให้ลูกค้าของคุณมีประสบการณ์ในชุดการใช้ API แบบนอกกรอบของเราเพื่อบังคับใช้การตรวจสอบสิทธิ์การใช้งานรันไทม์ |
ดูรายงาน การเติบโตของเชื้อเพลิง | รับข้อมูลเชิงลึกของรายได้ ข้อมูลการจ่ายเงิน และรายละเอียดคําสั่งซื้อและสิทธิ์การใช้งาน ดูข้อมูลเกี่ยวกับสิทธิ์การใช้งานและคําสั่งซื้อที่ซื้อ ต่ออายุ และยกเลิกเมื่อเวลาผ่านไปและตามภูมิศาสตร์ |
API การให้สิทธิ์การใช้งาน
API สิทธิ์การใช้งานช่วยให้นักพัฒนาวิชวล Power BI สามารถบังคับใช้สิทธิ์การใช้งานวิชวล Power BI ได้ API สนับสนุนการดึงข้อมูลเกี่ยวกับสิทธิ์การใช้งานวิชวล Power BI ที่กําหนดให้กับผู้ใช้ Power BI นอกจากนี้ยังเปิดใช้งานการทริกเกอร์การแจ้งเตือนที่เกี่ยวข้องกับสิทธิ์การใช้งานที่ปรากฏบนวิชวล Power BI และแจ้งให้ผู้ใช้ทราบว่าพวกเขาจําเป็นต้องซื้อสิทธิ์การใช้งานที่ขาดหายไป วิชวลไม่ควรแสดง UX สิทธิ์การใช้งานของตัวเอง ให้ใช้การแจ้งเตือนที่กําหนดไว้ล่วงหน้าที่สนับสนุนอย่างใดอย่างหนึ่งของ Power BI ตามรายละเอียดในส่วนต่อไปนี้แทน
เรียนรู้เพิ่มเติมเกี่ยวกับสิทธิ์การใช้งาน Power BI โปรดดู การบังคับใช้สิทธิ์การใช้งาน
หมายเหตุ
API สิทธิ์การใช้งานจะพร้อมใช้งานจากเวอร์ชัน 4.7 เมื่อต้องการตรวจสอบเวอร์ชันที่คุณกําลังใช้ ให้ตรวจสอบ apiVersion
ในไฟล์ pbiviz.json
เรียกใช้แผนบริการของวิชวลที่กําหนดให้กับผู้ใช้ที่ใช้งานอยู่
เมื่อต้องการรับแผนบริการที่กําหนด ให้เพิ่มการโทร ( getAvailableServicePlans
พร้อมใช้งานผ่าน IVisualLicenseManager
)
จากมุมมองประสิทธิภาพการทํางาน ให้พยายามดึงข้อมูลสิทธิ์การใช้งานหนึ่งครั้ง โดยเฉพาะอย่างยิ่งใน constructor
หรือ init
การเรียก และบันทึกผลลัพธ์
เมื่อดึงสิทธิ์การใช้งานแล้ว สิทธิ์เหล่านั้นจะถูกแคชในด้านโฮสต์ Power BI ในระหว่างเซสชัน Power BI และการเรียกเพิ่มเติมใด ๆ ไปยังข้อมูลเดียวกันที่แคชไว้
export interface IVisualLicenseManager {
getAvailableServicePlans(): IPromise<powerbi.extensibility.visual.LicenseInfoResult>;
}
การดึงข้อมูลสิทธิ์การใช้งานอาจเป็นการดําเนินการที่ยาวนาน ดังนั้นการ getAvailableServicePlans
เรียกใช้คือการเรียกใช้แบบอะซิงโครนัส และควรจัดการเช่น ในรหัสของคุณ
เป็นการตอบสนองต่อการเรียกใช้เมธอด LicenseInfoResult
วัตถุจะถูกส่งกลับ
export interface LicenseInfoResult {
plans: ServicePlan[] | undefined;
isLicenseUnsupportedEnv: boolean;
isLicenseInfoAvailable: boolean;
}
plans
- อาร์เรย์ของแผนบริการที่ซื้อโดยผู้ใช้ที่ใช้งานอยู่สําหรับวิชวลนี้ (สิทธิ์การใช้งานที่ซื้อสําหรับวิชวลอื่น ๆ จะไม่รวมอยู่ในการตอบกลับ)
ServicePlan ประกอบด้วยตัวระบุบริการ (ตัวระบุตัวระบุ) และรัฐ (ServicePlanState)spIdentifier: ค่าสตริงของ ID บริการที่สร้างขึ้นเมื่อคุณกําหนดค่าแผนของข้อเสนอของคุณใน Partner Center (ดูตัวอย่างต่อไปนี้)
state – enum (ServicePlanState) ที่แสดงถึงสถานะของแผนที่ได้รับมอบหมาย
สถานะแผนบริการที่ได้รับการสนับสนุน:รัฐ/จังหวัด คำอธิบาย ปิดการใช้งาน ระบุว่าสิทธิ์การใช้งานไม่ได้ใช้งานอยู่และไม่ควรใช้สําหรับจัดเตรียมสิทธิประโยชน์ ต้องดำเนินการ ระบุว่าสิทธิ์การใช้งานเปิดใช้งานอยู่และสามารถใช้เพื่อจัดเตรียมสิทธิประโยชน์ได้ คำเตือน ระบุว่าสิทธิ์การใช้งานอยู่ในช่วงเวลาผ่อนผันซึ่งอาจเกิดจากการละเมิดการชําระเงิน ถูกระงับ ระบุว่าสิทธิ์การใช้งานถูกระงับมีแนวโน้มที่จะเกิดขึ้นเนื่องจากการละเมิดการชําระเงิน ไม่รู้จัก ค่า Microsoft Sentinel เฉพาะสถานะ ใช้งานอยู่ และ คําเตือน เท่านั้นที่แสดงถึงสิทธิ์การใช้งานที่ใช้งานได้ รัฐอื่น ๆ ทั้งหมดควรได้รับการปฏิบัติโดยไม่ทําให้เกิดสิทธิ์การใช้งานที่ใช้งานได้
isLicenseUnsupportedEnv
- ระบุว่าวิชวลกําลังแสดงในสภาพแวดล้อม Power BI ที่ไม่รองรับการจัดการใบอนุญาตหรือการบังคับใช้ ในขณะนี้ สภาพแวดล้อม Power BI ต่อไปนี้ไม่สนับสนุนการจัดการสิทธิ์การใช้งานหรือการบังคับใช้สิทธิ์การใช้งาน:- Embedded - เผยแพร่ไปยังเว็บ PaaS แบบฝังตัว
- ระบบคลาวด์ของชาติ/ภูมิภาค (ขึ้นอยู่กับการสนับสนุนทั่วไปสําหรับความสามารถในการแปลงในระบบคลาวด์ในประเทศ/ภูมิภาค)
- เซิร์ฟเวอร์ RS (ไม่มีการสนับสนุนที่วางแผนไว้)
- การส่งออก (PDF\PPT) โดยใช้ REST API
isLicenseInfoAvailable
- ระบุว่าสามารถเรียกใช้ข้อมูลสิทธิ์การใช้งานได้หรือไม่ ความล้มเหลวในการเรียกข้อมูลสิทธิ์การใช้งานอาจเกิดขึ้นได้ในกรณีที่ผู้ใช้ Power BI Desktop ไม่ได้ลงชื่อเข้าใช้หรือไม่ได้เชื่อมต่อกับอินเทอร์เน็ต (ออฟไลน์) สําหรับเว็บ การดึงข้อมูลสิทธิ์การใช้งานอาจล้มเหลวเนื่องจากบริการหยุดทํางานชั่วคราว
ตัวอย่างของการเรียก 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);
});
หมายเหตุ
ตัวอย่างนี้สาธิตเฉพาะวิธีการตรวจสอบว่าผู้ใช้มีแผนที่ถูกต้องสําหรับวิชวลนี้หรือไม่ อาร์เรย์ plans
อาจมีค่าที่แตกต่างกัน spIdentifier
และตัวระบุแต่ละรายการสามารถปรากฏหลายครั้งด้วยสถานะที่แตกต่างกัน
แจ้งให้ผู้ใช้ทราบว่าสิทธิ์การใช้งานที่จําเป็นหายไป
แพลตฟอร์ม Power BI มอบประสบการณ์ที่ไม่ยุ่งยากหลายอย่างที่สามารถใช้เพื่อแจ้ง:
- ควรซื้อสิทธิ์การใช้งานเพื่อเพลิดเพลินไปกับความสามารถทั้งหมดของวิชวล
- คุณลักษณะของวิชวลเฉพาะถูกบล็อกเนื่องจากสิทธิ์การใช้งานหายไป
- วิชวลทั้งหมดถูกบล็อกเนื่องจากสิทธิ์การใช้งานหายไป
- วิชวลทั้งหมดถูกบล็อกเนื่องจากสภาพแวดล้อม Power BI ที่ใช้งานอยู่ไม่สนับสนุนการจัดการสิทธิ์การใช้งาน\บังคับใช้
export interface IVisualLicenseManager {
notifyLicenseRequired(notificationType: LicenseNotificationType): IPromise<boolean>;
notifyFeatureBlocked(tooltip: string): IPromise<boolean>;
clearLicenseNotification(): IPromise<boolean>;
}
ตัวอย่างของการเรียก 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);
});
}
ไอคอนทั่วไปที่ระบุว่าไม่มีสิทธิ์การใช้งานที่จําเป็น
ใช้ notifyLicenseRequired
การเรียกด้วย LicenseNotificationType.General
เพื่อแสดงไอคอนเป็นส่วนหนึ่งของคอนเทนเนอร์ของวิชวล
เมื่อทริกเกอร์แล้ว ไอคอนจะถูกรักษาไว้ตลอดอายุการใช้งานของวิชวลจนกว่า clearLicenseNotification
หรือ notifyLicenseRequired
จะถูกเรียก
หมายเหตุ
การแจ้งเตือน LicenseNotificationType.General
จะถูกบังคับใช้จากสภาพแวดล้อมที่สนับสนุนการจัดการสิทธิ์การใช้งานและสําหรับสถานการณ์การแก้ไข Power BI เท่านั้น การเรียกใช้สิ่งนี้ในสภาพแวดล้อมที่ไม่รองรับหรือเมื่อรายงานอยู่ในโหมดอ่านหรือในแดชบอร์ดไม่ใช้ไอคอนและส่งกลับ false
ในการตอบสนองของการโทร
ตัวอย่างของการแสดงผลด้วยภาพที่มีไอคอนทั่วไป "ต้องมีสิทธิ์การใช้งาน":
วางซ้อนการแสดงผลของวิชวลด้วยการแจ้งเตือนสิทธิ์การใช้งานที่ขาดหายไป
ใช้ notifyLicenseRequired
การเรียกด้วยการ LicenseNotificationType.VisualIsBlocked
ซ้อนทับการแสดงผลของวิชวลด้วยการแจ้งเตือนว่าวิชวลถูกบล็อกเนื่องจากพบสิทธิ์การใช้งานที่จําเป็นที่หายไป
เมื่อถูกทริกเกอร์การแจ้งเตือนนี้จะถูกรักษาไว้ตลอดอายุการใช้งานของวิชวลจนกว่าจะ clearLicenseNotification
หรือ notifyLicenseRequired
ถูกเรียก
ตัวอย่างของการแสดงผลด้วยภาพที่มี การแจ้งเตือนที่ถูก บล็อกวิชวล Power BI Desktop จะแสดง ตัวเลือก รับสิทธิ์การใช้งาน เท่านั้น:
วางซ้อนการแสดงผลของวิชวลด้วย การแจ้งเตือนสภาพแวดล้อม ที่ไม่รองรับ
ใช้ notifyLicenseRequired
การเรียกด้วยการ LicenseNotificationType.UnsupportedEnv
ซ้อนทับการแสดงผลของวิชวลด้วยการแจ้งเตือนที่วิชวลถูกบล็อกเนื่องจาก Power BI ที่ใช้ไม่สนับสนุนการจัดการสิทธิ์การใช้งาน\ การบังคับใช้
เมื่อทริกเกอร์แล้ว ไอคอนจะถูกรักษาไว้ตลอดอายุการใช้งานของวิชวลจนกว่า clearLicenseNotification
หรือ notifyLicenseRequired
จะถูกเรียก
หมายเหตุ
การแจ้งเตือน LicenseNotificationType.UnsupportedEnv
จะถูกบังคับใช้เฉพาะเมื่อถูกเรียกในบริบทของ ไม่รองรับ สําหรับสภาพแวดล้อมสิทธิ์การใช้งาน การเรียกใช้สิ่งนี้ในสภาพแวดล้อมอื่น ๆ จะไม่ใช้การแจ้งเตือนและส่งกลับ false
ในการตอบสนองของการโทร
ตัวอย่างของการแสดงผลด้วยภาพที่มีการแจ้งเตือน "สภาพแวดล้อมที่ไม่รองรับ":
แสดงแบนเนอร์เพื่อแจ้งให้ทราบว่าฟังก์ชันการทํางานของวิชวลที่ระบุไม่สามารถนําไปใช้ได้
เมื่อใช้ฟังก์ชันการทํางานของวิชวลเฉพาะจําเป็นต้องมีสิทธิ์การใช้งานที่พบหายไป คุณสามารถใช้การ notifyFeatureBlocked
เรียกใช้ที่แสดงแบนเนอร์แบบป็อปอัพเป็นส่วนหนึ่งของคอนเทนเนอร์ของวิชวลได้ แบนเนอร์ยังสนับสนุนคําแนะนําเครื่องมือแบบกําหนดเองที่คุณสามารถตั้งค่าและใช้เพื่อให้ข้อมูลเพิ่มเติมเกี่ยวกับคุณลักษณะที่ทริกเกอร์การแจ้งเตือน
หมายเหตุ
คุณลักษณะ นี้ถูก บล็อคการแจ้งเตือนจะถูกบังคับใช้เมื่อเป็นไปตามเงื่อนไขทั้งสองข้อต่อไปนี้:
- ซึ่งเรียกว่าจากสภาพแวดล้อมสิทธิ์การใช้งานที่ได้รับการสนับสนุน
- การบล็อกการวางซ้อนจะไม่ถูกนําไปใช้ (
LicenseNotificationType.UnsupportedEnv
,LicenseNotificationType.VisualIsBlocked
)
การเรียกใช้การแจ้งเตือนนี้ในสภาพแวดล้อมที่ไม่รองรับจะไม่ใช้การแจ้งเตือนและส่งกลับ false
ในการตอบสนองของการโทร
หมายเหตุ
เพื่อสนับสนุนสภาพแวดล้อม Power BI ที่แปลเป็นภาษาท้องถิ่น เราขอแนะนําให้รักษาเวอร์ชันที่แปลเป็นภาษาท้องถิ่นของคําแนะนําเครื่องมือที่ใช้งานอยู่ โปรดใช้ API การแปลเป็นภาษาท้องถิ่นเพื่อเรียกใช้ภาษาท้องถิ่นของ Power BI
เมื่อทริกเกอร์แบนเนอร์จะแสดงเป็นเวลา 10 วินาทีหรือจนกว่าแบนเนอร์ "ฟีเจอร์ที่ถูกบล็อก" อื่นจะถูกทริกเกอร์ หรือจนกว่าจะ clearLicenseNotification
ถูกเรียกใช้ (ไม่ว่าจะมาก่อนก็ตาม)
ตัวอย่างของการแสดงผลด้วยภาพที่มีแบนเนอร์ "คุณลักษณะที่ถูกบล็อก":
ทดสอบวิชวลที่ได้รับอนุญาต
เมื่อต้องการทดสอบภาพที่ได้รับอนุญาตสิ้นสุดลงก่อนที่จะทําให้วิชวลพร้อมใช้งานแบบสาธารณะ:
- หากคุณกําลังสร้างข้อเสนอใหม่ ให้เพิ่มวิชวลเป็นแผนส่วนตัวสําหรับบัญชีลูกค้าทดสอบ ข้อเสนอนี้สามารถมองเห็นบัญชีทดสอบนี้ได้สําหรับการซื้อเท่านั้น ใช้บัญชีนี้เพื่อตรวจสอบความถูกต้องของข้อเสนอก่อนเผยแพร่สู่สาธารณะ
- ถ้าวิชวลของคุณพร้อมใช้งานแล้วใน AppSource และคุณต้องการอัปเกรดเป็นวิ ชวลที่มีสิทธิ์การใช้งาน คุณจะไม่สามารถทําให้เป็นแผน ส่วนตัวได้เนื่องจากซ่อนวิชวลจาก AppSource และผู้ใช้ที่มีอยู่ของคุณจะไม่สามารถเข้าถึงได้ ขณะนี้ยังไม่มีวิธีทดสอบวิชวลที่เผยแพร่จนจบ ทดสอบในแบบเดียวกันกับที่คุณทดสอบวิชวลต้นฉบับไปยัง AppSource โดยการจําลองค่า API สิทธิ์การใช้งานเพื่อตรวจสอบความเป็นไปได้ที่แตกต่างกัน
ข้อควรพิจารณาและข้อจำกัด
- คําแนะนําเครื่องมือสําหรับแบนเนอร์คุณลักษณะถูกจํากัดด้วย 500 chars
- คําแนะนําเครื่องมือสําหรับแบนเนอร์คุณลักษณะจําเป็นต้องมีการแปลเป็นภาษาท้องถิ่น
- การรวมสิทธิ์การใช้งาน (นั่นคือ สิทธิ์การใช้งานหนึ่งสิทธิ์ที่ครอบคลุมหลายข้อเสนอจากผู้เผยแพร่เดียวกัน) ยังไม่ได้รับการสนับสนุน
เนื้อหาที่เกี่ยวข้อง
เผยแพร่วิชวลแบบกําหนดเองของ Power BI
มีคำถามเพิ่มเติมหรือไม่? ลองถามชุมชน Power BI