เริ่มต้นใช้งานด่วน: การกําหนดค่า Microsoft Entra สําหรับตัวเชื่อมต่อแบบกําหนดเอง
คู่มือนี้อธิบายขั้นตอนการกําหนดค่าแอปพลิเคชัน Microsoft Entra สําหรับการใช้งานกับตัวเชื่อมต่อแบบกําหนดเองของ Power Query เราขอแนะนําให้นักพัฒนาตัวเชื่อมต่อตรวจสอบแนวคิดของแพลตฟอร์มข้อมูลประจำตัวของ Microsoft ก่อนดําเนินการต่อ
เนื่องจากคําของ แอปพลิเคชัน ถูกใช้ในหลายบริบทในแพลตฟอร์ม Microsoft Entra คู่มือนี้จึงใช้คําต่อไปนี้เพื่อแยกความแตกต่างระหว่าง รหัสแอปพลิเคชันของตัวเชื่อมต่อ และ แหล่งข้อมูล :
- แอปพลิเคชันไคลเอ็นต์: รหัสไคลเอ็นต์ของ Microsoft Entra ที่ใช้โดยตัวเชื่อมต่อ Power Query
- แอปพลิเคชันทรัพยากร: การลงทะเบียนแอปพลิเคชัน Microsoft Entra สําหรับจุดสิ้นสุดที่ตัวเชื่อมต่อเชื่อมต่อกับ (นั่นคือ บริการ หรือแหล่งข้อมูลของคุณ)
การเปิดใช้งานการสนับสนุน Microsoft Entra สําหรับตัวเชื่อมต่อแบบกําหนดเองเกี่ยวข้องกับ:
- กําหนดขอบเขตอย่างน้อยหนึ่ง รายการ ในแอปพลิเคชันทรัพยากรที่ตัวเชื่อมต่อใช้
- การตรวจสอบรหัสไคลเอ็นต์ Power Query ล่วงหน้าเพื่อใช้ขอบเขตเหล่านั้น
- การตั้งค่าที่ถูกต้อง
Resource
และScopes
ค่าในข้อกําหนดของตัวเชื่อมต่อ
คู่มือนี้ถือว่ามีการลงทะเบียนแอปพลิเคชันทรัพยากรใหม่ใน Microsoft Entra นักพัฒนาที่มีแอปพลิเคชันทรัพยากรที่มีอยู่สามารถข้ามไปยังส่วน กําหนดค่าขอบเขต ได้
หมายเหตุ
สําหรับรายละเอียดเพิ่มเติมเกี่ยวกับการใช้ Microsoft Entra ในบริการหรือแอปพลิเคชันของคุณ ไปที่หนึ่งใน คําแนะนําเริ่มต้นใช้งานด่วน
ลงทะเบียนแอปพลิเคชันทรัพยากร
แหล่งข้อมูลหรือจุดสิ้นสุด API ของคุณใช้แอปพลิเคชันทรัพยากรนี้เพื่อสร้างความน่าเชื่อถือระหว่างบริการของคุณและแพลตฟอร์มข้อมูลประจำตัวของ Microsoft
ทําตามขั้นตอนเหล่านี้เพื่อลงทะเบียนแอปพลิเคชันทรัพยากรใหม่:
- ลงชื่อเข้าใช้ศูนย์การจัดการ Microsoft Entra เป็นผู้ดูแลระบบแอปพลิเคชันระบบคลาวด์เป็นอย่างน้อย
- เรียกดู การลงทะเบียนแอปพลิเคชันข้อมูลประจําตัว>>และเลือก การลงทะเบียนใหม่
- ใส่ชื่อที่แสดงสําหรับแอปพลิเคชันของคุณ
- สําหรับ ชนิดบัญชีที่สนับสนุน ให้เลือก บัญชีในไดเรกทอรีองค์กรนี้เฉพาะ เมื่อจุดสิ้นสุดของคุณสามารถเข้าถึงได้จากภายในองค์กรของคุณเท่านั้น เลือก บัญชีในไดเรกทอรี องค์กรใด ๆ สําหรับบริการของผู้เช่าสาธารณะที่สามารถเข้าถึงได้
- เลือก การลงทะเบียน
คุณไม่จําเป็นต้องระบุ ค่า URI เปลี่ยนเส้นทาง
หน้า ภาพรวม ของแอปพลิเคชันจะแสดงขึ้นเมื่อการลงทะเบียนเสร็จสมบูรณ์ จดบันทึก ID ไดเรกทอรี (ผู้เช่า) และ ค่า ID แอปพลิเคชัน (ไคลเอนต์) เนื่องจากจะใช้ในรหัสแหล่งที่มาของบริการของคุณ ทําตามหนึ่งในคําแนะนําในตัวอย่างรหัสแพลตฟอร์มข้อมูลประจำตัวของ Microsoft ที่คล้ายกับสภาพแวดล้อมและสถาปัตยกรรมบริการของคุณเพื่อกําหนดวิธีการกําหนดค่าและใช้ประโยชน์จากแอปพลิเคชันใหม่ของคุณ
ตั้งค่า URI ID แอปพลิเคชัน
ก่อนที่คุณจะสามารถ กําหนดค่าขอบเขต สําหรับจุดสิ้นสุดของคุณ คุณต้องตั้งค่า URI ID แอปพลิเคชันสําหรับแอปพลิเคชันทรัพยากรของคุณ ID นี้จะถูกใช้โดย Resource
เขตข้อมูลของ Aad
เรกคอร์ดในตัวเชื่อมต่อของคุณ ค่าถูกตั้งค่าเป็น URL รากของบริการของคุณ คุณยังสามารถใช้ค่าเริ่มต้นที่สร้างขึ้นโดย Microsoft Entra - api://{clientId}
ซึ่งเป็น {clientId}
ID ไคลเอ็นต์ของแอปพลิเคชันทรัพยากรของคุณ
- ไปที่หน้า ภาพรวมของแอปพลิเคชันทรัพยากร
- บนหน้าจอตรงกลาง ภายใต้ Essentials เลือกเพิ่ม ID แอปพลิเคชัน URI
- ใส่ URI หรือยอมรับค่าเริ่มต้นตาม ID แอปของคุณ
- เลือกบันทึกและดําเนินการต่อ
ตัวอย่างในคู่มือนี้สมมุติว่าคุณกําลังใช้รูปแบบ Application ID URI ตามค่าเริ่มต้น (ตัวอย่างเช่น - api://44994a60-7f50-4eca-86b2-5d44f873f93f
)
กําหนดค่าขอบเขต
ขอบเขตถูกใช้เพื่อกําหนดสิทธิ์หรือความสามารถในการเข้าถึง API หรือข้อมูลในบริการของคุณ รายการขอบเขตที่สนับสนุนเป็นบริการเฉพาะ คุณต้องการกําหนดชุดขอบเขตที่น้อยที่สุดซึ่งตัวเชื่อมต่อของคุณจําเป็นต้องใช้ คุณจําเป็นต้องรับรองความถูกต้องอย่างน้อยหนึ่งขอบเขตสําหรับรหัสไคลเอ็นต์ Power Query
ถ้าแอปพลิเคชันทรัพยากรของคุณมีการกําหนดขอบเขตอยู่แล้ว คุณสามารถข้ามไปยัง ขั้นตอนถัดไปได้
ถ้าบริการของคุณไม่ได้ใช้สิทธิ์ตามขอบเขต คุณยังสามารถกําหนดขอบเขตเดียวที่ตัวเชื่อมต่อใช้ได้ (ไม่บังคับ) ใช้ประโยชน์จากขอบเขตนี้ในโค้ดบริการของคุณในอนาคต
ในตัวอย่างนี้ คุณกําหนดขอบเขตเดียวที่เรียกว่า Data.Read
- ไปที่หน้า ภาพรวมของแอปพลิเคชันทรัพยากร
- ภายใต้ จัดการ เลือก เปิดเผย API > เพิ่มขอบเขต
- สําหรับชื่อขอบเขต ให้ใส่ Data.Read
- สําหรับใครสามารถยินยอม ให้เลือกตัวเลือก ผู้ดูแลระบบและผู้ใช้
- กรอกชื่อที่แสดงและกล่องคําอธิบายที่เหลือ
- ตรวจสอบให้แน่ใจว่า สถานะ ถูกตั้งค่าเป็น เปิดใช้งานแล้ว
- เลือก เพิ่มขอบเขต
รับรองแอปพลิเคชันไคลเอ็นต์ Power Query ล่วงหน้า
ตัวเชื่อมต่อ Power Query ใช้รหัสไคลเอ็นต์ Microsoft Entra ที่แตกต่างกันสองรหัส การตรวจสอบขอบเขตล่วงหน้าสําหรับรหัสไคลเอ็นต์เหล่านี้ทําให้ประสบการณ์การเชื่อมต่อง่ายขึ้น
Client ID | ชื่อแอปพลิเคชัน | ใช้โดย |
---|---|---|
a672d62c-fc7b-4e81-a576-e60dc46e951d | Power Query สําหรับ Excel | สภาพแวดล้อมเดสก์ท็อป |
b52893c8-bc2e-47fc-918b-77022b299bbc | การรีเฟรชข้อมูล Power BI | สภาพแวดล้อมของบริการ |
ในการตรวจสอบรหัสไคลเอ็นต์ Power Query ล่วงหน้า:
- ไปที่หน้า ภาพรวมของแอปพลิเคชันทรัพยากร
- ภายใต้ จัดการ เลือก เปิด API
- เลือก เพิ่มแอปพลิเคชันไคลเอ็นต์
- ป้อนหนึ่งในรหัสไคลเอ็นต์ Power Query
- เลือกขอบเขตที่ได้รับอนุญาตที่เหมาะสม
- เลือก เพิ่มแอปพลิเคชัน
- ทําซ้ําขั้นตอนที่ 3 - 6 สําหรับแต่ละ ID ไคลเอ็นต์ของ Power Query
เปิดใช้งานชนิดการรับรองความถูกต้อง Aad ในตัวเชื่อมต่อของคุณ
เปิดใช้งานการสนับสนุน Microsoft Entra ID สําหรับตัวเชื่อมต่อของคุณ โดยการเพิ่ม Aad
ชนิดการรับรองความถูกต้องไปยังระเบียนแหล่งข้อมูลของตัวเชื่อมต่อของคุณ
MyConnector = [
Authentication = [
Aad = [
AuthorizationUri = "https://login.microsoftonline.com/common/oauth2/authorize",
Resource = "{YourApplicationIdUri}"
Scope = ".default"
]
]
];
{YourApplicationIdUri}
แทนที่ค่า ด้วยค่า URI ID แอปพลิเคชันสําหรับแอปพลิเคชันทรัพยากรของคุณ ตัวอย่างเช่น api://44994a60-7f50-4eca-86b2-5d44f873f93f
ในตัวอย่างนี้:
- AuthorizationUri: URL ของ Microsoft Entra ที่ใช้ในการเริ่มต้นโฟลว์การรับรองความถูกต้อง
ตัวเชื่อมต่อส่วนใหญ่สามารถฮาร์ดโค้ดค่า
https://login.microsoftonline.com/common/oauth2/authorize
นี้เป็น แต่สามารถกําหนดได้แบบไดนามิกถ้าบริการของคุณสนับสนุน Azure B2B/Guest Accounts สําหรับข้อมูลเพิ่มเติม ไปที่ตัวอย่าง - ทรัพยากร: URI ID แอปพลิเคชันของตัวเชื่อมต่อของคุณ
- ขอบเขต: ใช้ ขอบเขต .default เพื่อรับขอบเขตที่รับรองความถูกต้องแล้วทั้งหมดโดยอัตโนมัติ การใช้
.default
ช่วยให้คุณสามารถเปลี่ยนขอบเขตตัวเชื่อมต่อที่จําเป็นในการลงทะเบียนแอปพลิเคชันทรัพยากรของคุณโดยไม่จําเป็นต้องอัปเดตตัวเชื่อมต่อของคุณ
สําหรับรายละเอียดเพิ่มเติมและตัวเลือกสําหรับการกําหนดค่าการสนับสนุน Microsoft Entra ในตัวเชื่อมต่อของคุณ ไปที่ หน้าตัวอย่างการรับรองความถูกต้อง Microsoft Entra ID
สร้างตัวเชื่อมต่อของคุณอีกครั้ง และตอนนี้คุณควรสามารถรับรองความถูกต้องกับบริการของคุณโดยใช้รหัส Microsoft Entra
การแก้ไขปัญหา
ในส่วนนี้จะอธิบายข้อผิดพลาดทั่วไปที่คุณอาจได้รับหากแอปพลิเคชัน Microsoft Entra ของคุณกําหนดค่าไม่ถูกต้อง
แอปพลิเคชัน Power Query ยังไม่ได้รับการรับรองความถูกต้องล่วงหน้า
access_denied: AADSTS650057: ทรัพยากรไม่ถูกต้อง ไคลเอ็นต์ได้ร้องขอการเข้าถึงทรัพยากรซึ่งไม่ได้แสดงอยู่ในสิทธิ์ที่ร้องขอในการลงทะเบียนแอปพลิเคชันของไคลเอ็นต์ ID แอปไคลเอ็นต์: a672d62c-fc7b-4e81-a576-e60dc46e951d(Microsoft Power Query สําหรับ Excel) ค่าทรัพยากรจากคําขอ: 44994a60-7f50-4eca-86b2-5d44f873f93f ID แอปทรัพยากร: 44994a60-7f50-4eca-86b2-5d44f873f93
คุณอาจเห็นข้อผิดพลาดนี้หากแอปพลิเคชันทรัพยากรของคุณยังไม่ได้รับรองความถูกต้องแอปพลิเคชันไคลเอ็นต์ Power Query ไว้ล่วงหน้า ทําตามขั้นตอนใน การรับรองความถูกต้องรหัสไคลเอ็นต์ Power Query ล่วงหน้า
ระเบียน Aad ของ เชื่อมต่อ or ไม่มีค่าขอบเขต
access_denied: AADSTS650053: แอปพลิเคชัน 'Microsoft Power Query สําหรับ Excel' ถามถึงขอบเขต 'user_impersonation' ที่ไม่มีอยู่บนทรัพยากร '44994a60-7f50-4eca-86b2-5d4f873f93f' ติดต่อผู้จําหน่ายแอป
Power Query ร้องขอuser_impersonation
ขอบเขตถ้าระเบียนของAad
ตัวเชื่อมต่อไม่ได้กําหนดScope
เขตข้อมูล หรือScope
ค่าคือnull
คุณสามารถแก้ไขปัญหานี้ได้โดยการกําหนดค่า Scope
ในตัวเชื่อมต่อ .default
แนะนําให้ใช้ขอบเขต แต่คุณยังสามารถระบุขอบเขตที่ระดับตัวเชื่อมต่อ (ตัวอย่างเช่น - Data.Read
)
ขอบเขตหรือแอปพลิเคชันไคลเอ็นต์ต้องได้รับการอนุมัติจากผู้ดูแลระบบ
จําเป็นต้องมีการอนุมัติจากผู้ดูแลระบบ <ผู้เช่า> ต้องการสิทธิ์ในการเข้าถึงทรัพยากรในองค์กรของคุณที่ผู้ดูแลระบบเท่านั้นสามารถมอบได้ โปรดขอให้ผู้ดูแลระบบให้สิทธิ์แอปนี้ก่อนที่คุณจะสามารถใช้ได้
ผู้ใช้อาจได้รับข้อผิดพลาดนี้ในระหว่างโฟลว์การรับรองความถูกต้องของพวกเขา ถ้าแอปพลิเคชันทรัพยากรของคุณต้องการ สิทธิ์ แบบจํากัดโดยผู้ดูแลระบบ หรือผู้เช่าของผู้ใช้จะป้องกันไม่ให้ผู้ใช้ที่ไม่ admin ยินยอมให้ร้องขอสิทธิ์ของแอปพลิเคชันใหม่ คุณสามารถหลีกเลี่ยงปัญหานี้ได้โดยตรวจสอบให้แน่ใจว่าตัวเชื่อมต่อของคุณไม่จําเป็นต้องมีขอบเขตที่จํากัดโดยผู้ดูแลระบบ และ รับรองความถูกต้องรหัส ไคลเอ็นต์ Power Query สําหรับแอปพลิเคชันทรัพยากรของคุณ