ฝังเนื้อหา Power BI ด้วยองค์ประกอบหลักของบริการและข้อมูลลับของแอปพลิเคชัน
บริการหลักคือวิธีการรับรองความถูกต้องที่สามารถใช้เพื่ออนุญาตให้เข้าถึงแอปพลิเคชัน Microsoft Entra บริการของ Power BI เนื้อหาและ API ได้
เมื่อคุณสร้างแอป Microsoft Entra วัตถุ บริการหลักจะถูกสร้างขึ้น วัตถุบริการหลัก ซึ่งเป็นที่รู้จักกันว่า บริการหลัก จะช่วยให้ Microsoft Entra ID สามารถรับรองความถูกต้องของแอปของคุณได้ หลังจากการรับรองความถูกต้อง แอปจะสามารถเข้าถึงแหล่งข้อมูลผู้เช่า Microsoft Entra ได้
เมื่อต้องการรับรองความถูกต้อง บริการหลักใช้ ID แอปพลิเคชันของแอป Microsoft Entra และหนึ่งในรายการต่อไปนี้:
- ใบรับรอง
- ข้อมูลลับของแอปพลิเคชัน
บทความนี้อธิบายการรับรองความถูกต้องของบริการหลักโดยใช้ ID แอปพลิเคชันและข้อมูล ลับของแอปพลิเคชัน
หมายเหตุ
เราขอแนะนําให้คุณรักษาความปลอดภัยบริการหลังบ้านของคุณโดยใช้ใบรับรองแทนที่จะเป็นคีย์ลับ
- เรียนรู้เพิ่มเติมเกี่ยวกับการรับโทเค็นการเข้าถึงจาก Microsoft Entra ID โดยใช้คีย์ลับหรือใบรับรอง
- หากต้องการรักษาความปลอดภัยโซลูชันของคุณโดยใช้ใบรับรอง ให้ทําตามคําแนะนําในบทความนี้จากนั้นทําตามขั้นตอนที่อธิบายไว้ใน ฝังเนื้อหา Power BI ด้วยองค์ประกอบหลักของบริการและใบรับรอง
วิธีการ
เมื่อต้องการใช้บริการหลักและ ID แอปพลิเคชันสําหรับการวิเคราะห์แบบฝังตัว คุณทําตามขั้นตอนต่อไปนี้ ส่วนที่ตามมาจะอธิบายขั้นตอนเหล่านี้โดยละเอียด
สร้างแอป Microsoft Entra
- สร้างข้อมูลลับสําหรับแอป Microsoft Entra ของคุณ
- รับ ID แอปพลิเคชันและข้อมูลลับของแอปพลิเคชันของแอป
หมายเหตุ
ขั้นตอนเหล่านี้จะอธิบายไว้ในขั้นตอนที่ 1 สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างแอป Microsoft Entra ดู สร้างแอป Microsoft Entra
สร้างกลุ่มความปลอดภัย Microsoft Entra
เปิดใช้งานการตั้งค่าผู้ดูแลระบบบริการของ Power BI
เพิ่มบริการหลักไปยังพื้นที่ทํางานของคุณ
ฝังเนื้อหาของคุณ
สำคัญ
แอปพลิเคชัน Microsoft Entra ไม่จําเป็นต้องให้คุณกําหนดค่าสิทธิ์ที่ได้รับมอบหมายหรือสิทธิ์ของแอปพลิเคชันในพอร์ทัล Azure เมื่อมีการสร้างสําหรับบริการหลัก เมื่อคุณสร้างแอปพลิเคชัน Microsoft Entra สําหรับบริการหลักเพื่อเข้าถึง Power BI REST API เราขอแนะนําให้คุณหลีกเลี่ยงการเพิ่มสิทธิ์ ซึ่งไม่เคยถูกใช้และอาจทําให้เกิดข้อผิดพลาดที่ยากต่อการแก้ไขปัญหา
ขั้นตอนที่ 1 - สร้างแอป Microsoft Entra
สร้างแอป Microsoft Entra โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้:
สร้างแอป Microsoft Entra ในพอร์ทัล Azure
ลงชื่อเข้าใช้ พอร์ทัล Azure
ค้นหาและเลือก การลงทะเบียนแอป
เลือก การลงทะเบียนใหม่
กรอกข้อมูลที่จําเป็น:
- ชื่อ - ป้อนชื่อสําหรับแอปพลิเคชันของคุณ
- ชนิด บัญชีที่ได้รับการสนับสนุน - เลือกประเภทบัญชีที่ได้รับการสนับสนุน
- (ไม่บังคับ) เปลี่ยนเส้นทาง URI - ใส่ URI ถ้าจําเป็น
เลือก การลงทะเบียน
หลังจากที่คุณลงทะเบียนแอป ของคุณ ID แอปพลิเคชันจะพร้อมใช้งานจากแท็บ ภาพรวม คัดลอก และบันทึก ID แอปพลิเคชันสําหรับการใช้งานในภายหลัง
เลือก ใบรับรองข้อมูลลับ
เลือก ข้อมูลลับของไคลเอนต์ใหม่
ในหน้าต่าง เพิ่มข้อมูลลับไคลเอ็นต์ ให้ป้อนคําอธิบาย ระบุเวลาที่คุณต้องการให้ความลับของไคลเอ็นต์หมดอายุ และเลือก เพิ่ม
คัดลอกและบันทึกค่าข้อมูลลับไคลเอนต์
หมายเหตุ
หลังจากที่คุณออกจากหน้าต่างนี้ ค่าความลับของไคลเอ็นต์จะถูกซ่อนและคุณไม่สามารถดูหรือคัดลอกอีกครั้งได้
สร้างแอป Microsoft Entra โดยใช้ PowerShell
ตัวอย่าง สคริปต์ PowerShell ต่อไปนี้สร้างแอป Microsoft Entra ใหม่และองค์ประกอบหลักของบริการ ก่อนที่คุณเรียกใช้สคริปต์นี้:
- ติดตั้ง PowerShell เวอร์ชันล่าสุด
- ติดตั้ง Microsoft Graph PowerShell SDK
หลังจากสคริปต์ทํางาน ให้จดบันทึกข้อมูลต่อไปนี้ในผลลัพธ์ของสคริปต์:
- ID ไคลเอ็นต์ของแอปใหม่
- ID ออบเจ็กต์ของโครงร่างสําคัญของบริการใหม่
- ค่าของความลับของโครงร่างสําคัญของบริการ
# Sign in as a user who's allowed to create an app.
Connect-MgGraph -Scopes "Application.ReadWrite.All"
# Create a new Azure AD web application.
$web = @{
RedirectUris = "https://localhost:44322"
HomePageUrl = "https://localhost:44322"
}
$params = @{
DisplayName = "myAzureADApp"
Web = $($web)
}
$app = New-MgApplication @params
Write-Host "Client ID of new app: " $($app.AppId)
# Create a service principal.
$ServicePrincipalID=@{
"AppId" = $($app.AppId)
}
$sp = New-MgServicePrincipal -BodyParameter $($ServicePrincipalId)
Write-Host "Object ID of new service principal: " $($sp.Id)
# Create a key for the service principal.
$credential = Add-MgServicePrincipalPassword -ServicePrincipalId $($sp.Id)
Write-Host "Credential of new service principal: " $($credential.SecretText)
ขั้นตอนที่ 2 - สร้างกลุ่มความปลอดภัยของ Microsoft Entra
โครงร่างสําคัญของบริการของคุณไม่สามารถเข้าถึงเนื้อหา Power BI และ API ของคุณได้ หากต้องการให้สิทธิ์การเข้าถึงบริการหลัก ให้สร้างกลุ่มความปลอดภัยใน Microsoft Entra ID จากนั้นเพิ่มบริการหลักที่คุณสร้างขึ้นในกลุ่มความปลอดภัยนั้น
หมายเหตุ
ถ้าคุณต้องการเปิดใช้งานการเข้าถึงบริการหลักสําหรับทั้งองค์กร ให้ข้ามขั้นตอนนี้
มีสองวิธีในการสร้างกลุ่มความปลอดภัย Microsoft Entra:
สร้างกลุ่มความปลอดภัยด้วยตนเอง
หากต้องการสร้างกลุ่มความปลอดภัย Azure ด้วยตนเอง ให้ทําตามคําแนะนําใน สร้างกลุ่มพื้นฐานและเพิ่มสมาชิก
สร้างกลุ่มความปลอดภัยโดยใช้ PowerShell
สคริปต์ตัวอย่างต่อไปนี้จะสร้างกลุ่มความปลอดภัยใหม่ นอกจากนี้ยังเพิ่มโครงร่างสําคัญของบริการที่คุณสร้างไว้ก่อนหน้านี้ลงในกลุ่มความปลอดภัยใหม่ด้วย
- ก่อนที่คุณเรียกใช้สคริปต์ แทนที่
<app-client-ID>
ด้วย ID ไคลเอ็นต์ที่คุณบันทึกไว้ก่อนหน้านี้สําหรับแอปใหม่ของคุณ - หลังจากที่คุณเรียกใช้สคริปต์ให้จดบันทึก ID ออบเจ็กต์ของกลุ่มความปลอดภัยใหม่ซึ่งคุณสามารถค้นหาได้ในผลลัพธ์ของสคริปต์
# Sign in as an admin.
Connect-MgGraph -Scopes "Application.ReadWrite.All"
# Get the service principal that you created earlier.
$servicePrincipal = Get-MgServicePrincipal -Filter "AppId eq '<app-client-ID>'"
# Create an Azure AD security group.
$group = New-MgGroup -DisplayName "securitygroup1" -SecurityEnabled -MailEnabled:$False -MailNickName "notSet"
Write-Host "Object ID of new security group: " $($group.Id)
# Add the service principal to the group.
New-MgGroupMember -GroupId $($group.Id) -DirectoryObjectId $($servicePrincipal.Id)
ขั้นตอนที่ 3 - เปิดใช้งานการตั้งค่าผู้ดูแลระบบบริการของ Power BI
สําหรับแอป Microsoft Entra เพื่อเข้าถึงเนื้อหา Power BI และ API ผู้ดูแลระบบ Power BI จําเป็นต้องเปิดใช้งานการตั้งค่าต่อไปนี้:
- ฝังเนื้อหาในแอปพลิเคชัน
- อนุญาตให้โครงร่างสำคัญของบริการใช้ API ของ Power BI
ใน พอร์ทัลผู้ดูแลระบบ Power BI ไปที่ การตั้งค่าผู้เช่า แล้วเลื่อนลงไปที่ การตั้งค่านักพัฒนา
เปิดใช้งาน เนื้อหาที่ฝังในแอป สําหรับทั้งองค์กรหรือกลุ่มความปลอดภัยเฉพาะที่คุณสร้างขึ้นใน Microsoft Entra ID
เปิดใช้งาน อนุญาตให้โครงร่างสําคัญของบริการใช้ API ของ Power BI สําหรับทั้งองค์กร หรือสําหรับกลุ่มความปลอดภัยเฉพาะที่คุณสร้างขึ้นใน Microsoft Entra ID
สำคัญ
บริการหลักมีสิทธิ์เข้าถึงการตั้งค่าผู้เช่าใดๆ ที่กําลังเปิดใช้งานอยู่ ขึ้นอยู่กับการตั้งค่าผู้ดูแลระบบของคุณ ซึ่งรวมถึงกลุ่มความปลอดภัยเฉพาะหรือทั้งองค์กร
เพื่อจํากัดการเข้าถึงบริการหลักของการตั้งค่าผู้เช่าเฉพาะ อนุญาตให้เข้าถึงกลุ่มความปลอดภัยเฉพาะเท่านั้น อีกวิธีหนึ่งคือคุณสามารถสร้างกลุ่มความปลอดภัยเฉพาะสําหรับบริการหลัก และแยกออกจากการตั้งค่าผู้เช่าที่ต้องการได้
ขั้นตอนที่ 4 - เพิ่มบริการหลักไปยังพื้นที่ทํางานของคุณ
แอป Microsoft Entra ของคุณสามารถเข้าถึงรายงาน Power BI แดชบอร์ด และแบบจําลองความหมายได้เฉพาะเมื่อสามารถเข้าถึงพื้นที่ทํางาน Power BI ของคุณเท่านั้น คุณให้การเข้าถึงนั้นโดยการเพิ่มโครงร่างสําคัญของบริการของแอปหรือกลุ่มความปลอดภัยไปยังพื้นที่ทํางานของคุณในฐานะสมาชิกหรือผู้ดูแลระบบ
การเพิ่มโครงร่างสําคัญของบริการหรือกลุ่มความปลอดภัยไปยังพื้นที่ทํางานของคุณมีอยู่สามวิธี:
เพิ่มโครงร่างสําคัญของบริการหรือกลุ่มความปลอดภัยด้วยตนเอง
ในบริการของ Power BI ให้เลื่อนไปยังพื้นที่ทํางานที่คุณต้องการเปิดใช้งานการเข้าถึง จากเมนูเพิ่มเติม เลือกการเข้าถึงพื้นที่ทํางาน
ในบานหน้าต่าง การเข้าถึง ภายใต้ เพิ่มผู้ดูแลระบบ สมาชิก หรือผู้สนับสนุน ให้เพิ่มหนึ่งในรายการต่อไปนี้:
- โครงร่างสําคัญของบริการของคุณ ชื่อบริการหลักของคุณคือ ชื่อ ที่แสดงของแอป Microsoft Entra ของคุณ ตามที่ปรากฏในแท็บภาพรวมของแอป Microsoft Entra ของคุณ
- กลุ่มความปลอดภัยที่รวมโครงร่างสําคัญของบริการของคุณ
บนเมนูดรอปดาวน์ เลือกสมาชิกหรือผู้ดูแลระบบ
เลือก เพิ่ม
เพิ่มโครงร่างสําคัญของบริการหรือกลุ่มความปลอดภัยโดยใช้ PowerShell
ส่วนต่อไปนี้แสดงตัวอย่าง สคริปต์ของ PowerShell สําหรับการเพิ่มโครงร่างสําคัญของบริการและกลุ่มความปลอดภัยไปยังพื้นที่ทํางาน Power BI ในฐานะสมาชิก
เพิ่มโครงร่างสําคัญของบริการเป็นสมาชิกพื้นที่ทํางานโดยใช้ PowerShell
สคริปต์ต่อไปนี้เพิ่มบริการหลักเป็นสมาชิกพื้นที่ทํางาน ก่อนที่คุณจะเรียกใช้สคริปต์:
- แทนที่
<service-principal-object-ID>
ด้วย ID ออบเจ็กต์ที่คุณบันทึกไว้ก่อนหน้านี้สําหรับบริการหลักของคุณใหม่ - แทนที่
<workspace-name>
ด้วยชื่อของพื้นที่ทํางานที่คุณต้องการให้สิทธิ์การเข้าถึงบริการหลัก
# Sign in to Power BI.
Login-PowerBI
# Set up the service principal ID.
$SPObjectID = "<service-principal-object-ID>"
# Get the workspace.
$pbiWorkspace = Get-PowerBIWorkspace -Filter "name eq '<workspace-name>'"
# Add the service principal to the workspace.
Add-PowerBIWorkspaceUser -Id $($pbiWorkspace.Id) -AccessRight Member -PrincipalType App -Identifier $($SPObjectID)
เพิ่มกลุ่มความปลอดภัยเป็นสมาชิกพื้นที่ทํางานโดยใช้ PowerShell
สคริปต์ต่อไปนี้เพิ่มกลุ่มความปลอดภัยเป็นสมาชิกพื้นที่ทํางาน ก่อนที่คุณจะเรียกใช้สคริปต์:
- แทนที่
<security-group-object-ID>
ด้วย ID ออบเจ็กต์ที่คุณบันทึกไว้ก่อนหน้านี้สําหรับกลุ่มความปลอดภัยใหม่ของคุณ - แทนที่
<workspace-name>
ด้วยชื่อของพื้นที่ทํางานที่คุณต้องการให้สิทธิ์การเข้าถึงกลุ่มความปลอดภัย
# Sign in to Power BI.
Login-PowerBI
# Set up the security group object ID.
$SGObjectID = "<security-group-object-ID>"
# Get the workspace.
$pbiWorkspace = Get-PowerBIWorkspace -Filter "name eq '<workspace-name>'"
# Add the security group to the workspace.
Add-PowerBIWorkspaceUser -Id $($pbiWorkspace.Id) -AccessRight Member -PrincipalType Group -Identifier $($SGObjectID)
ขั้นตอนที่ 5 - ฝังเนื้อหาของคุณ
คุณสามารถ ฝังเนื้อหาของคุณภายในแอปพลิเคชันตัวอย่าง หรือภายในแอปพลิเคชันของคุณเอง
หลังจากที่เนื้อหาของคุณถูกฝังแล้ว คุณก็พร้อมที่จะย้ายไปยังการผลิต
หมายเหตุ
เมื่อต้องการรักษาความปลอดภัยเนื้อหาของคุณโดยใช้ใบรับรอง ให้ทําตามขั้นตอนที่อธิบายไว้ในฝังเนื้อหา Power BI ด้วยองค์ประกอบหลักของบริการและใบรับรอง
ข้อควรพิจารณาและข้อจำกัด
- พื้นที่ทํางานของฉันไม่ได้รับการสนับสนุนเมื่อใช้บริการหลัก
- ต้องใช้ความจุเมื่อย้ายไปยังการผลิต
- คุณไม่สามารถลงชื่อเข้าใช้พอร์ทัล Power BI โดยใช้บริการหลัก
- คุณจําเป็นต้องมีสิทธิ์ของผู้ดูแลระบบ Power BI เพื่อเปิดใช้งานบริการหลักในการตั้งค่านักพัฒนาภายในพอร์ทัลผู้ดูแลระบบ Power BI
- แอปพลิเคชันแบบฝังตัวสําหรับองค์กรของคุณ ไม่สามารถใช้บริการหลักได้
- ไม่สนับสนุนการจัดการกระแส ข้อมูล
- บริการหลักสนับสนุนเฉพาะ API ของผู้ดูแลระบบแบบอ่านอย่างเดียวเท่านั้น เมื่อต้องการเปิดใช้งานการสนับสนุนโครงร่างสําคัญของบริการสําหรับ API ของผู้ดูแลระบบแบบอ่านอย่างเดียว คุณต้องเปิดใช้งานการตั้งค่าผู้ดูแลระบบบริการของ Power BI ในผู้เช่าของคุณ สําหรับข้อมูลเพิ่มเติม ดู เปิดใช้งานการรับรองความถูกต้องแบบโครงร่างสําคัญของบริการสําหรับ API ของผู้ดูแลระบบแบบอ่านอย่างเดียว
- เมื่อคุณใช้บริการหลักกับ แหล่งข้อมูล Azure Analysis Services โครงร่างสําคัญของบริการจะต้องมีสิทธิ์อินสแตนซ์ Azure Analysis Services การใช้กลุ่มความปลอดภัยที่ประกอบด้วยโครงร่างสําคัญของบริการสําหรับวัตถุประสงค์นี้ใช้ไม่ได้