แชร์ผ่าน


เริ่มต้นใช้งานด่วน: การกําหนดค่า 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

ทําตามขั้นตอนเหล่านี้เพื่อลงทะเบียนแอปพลิเคชันทรัพยากรใหม่:

  1. ลงชื่อเข้าใช้ศูนย์การจัดการ Microsoft Entra เป็นผู้ดูแลระบบแอปพลิเคชันระบบคลาวด์เป็นอย่างน้อย
  2. เรียกดู การลงทะเบียนแอปพลิเคชันข้อมูลประจําตัว>>และเลือก การลงทะเบียนใหม่
  3. ใส่ชื่อที่แสดงสําหรับแอปพลิเคชันของคุณ
  4. สําหรับ ชนิดบัญชีที่สนับสนุน ให้เลือก บัญชีในไดเรกทอรีองค์กรนี้เฉพาะ เมื่อจุดสิ้นสุดของคุณสามารถเข้าถึงได้จากภายในองค์กรของคุณเท่านั้น เลือก บัญชีในไดเรกทอรี องค์กรใด ๆ สําหรับบริการของผู้เช่าสาธารณะที่สามารถเข้าถึงได้
  5. เลือก การลงทะเบียน

คุณไม่จําเป็นต้องระบุ ค่า URI เปลี่ยนเส้นทาง

หน้า ภาพรวม ของแอปพลิเคชันจะแสดงขึ้นเมื่อการลงทะเบียนเสร็จสมบูรณ์ จดบันทึก ID ไดเรกทอรี (ผู้เช่า) และ ค่า ID แอปพลิเคชัน (ไคลเอนต์) เนื่องจากจะใช้ในรหัสแหล่งที่มาของบริการของคุณ ทําตามหนึ่งในคําแนะนําในตัวอย่างรหัสแพลตฟอร์มข้อมูลประจำตัวของ Microsoft ที่คล้ายกับสภาพแวดล้อมและสถาปัตยกรรมบริการของคุณเพื่อกําหนดวิธีการกําหนดค่าและใช้ประโยชน์จากแอปพลิเคชันใหม่ของคุณ

ตั้งค่า URI ID แอปพลิเคชัน

ก่อนที่คุณจะสามารถ กําหนดค่าขอบเขต สําหรับจุดสิ้นสุดของคุณ คุณต้องตั้งค่า URI ID แอปพลิเคชันสําหรับแอปพลิเคชันทรัพยากรของคุณ ID นี้จะถูกใช้โดย Resource เขตข้อมูลของ Aad เรกคอร์ดในตัวเชื่อมต่อของคุณ ค่าถูกตั้งค่าเป็น URL รากของบริการของคุณ คุณยังสามารถใช้ค่าเริ่มต้นที่สร้างขึ้นโดย Microsoft Entra - api://{clientId} ซึ่งเป็น {clientId} ID ไคลเอ็นต์ของแอปพลิเคชันทรัพยากรของคุณ

  1. ไปที่หน้า ภาพรวมของแอปพลิเคชันทรัพยากร
  2. บนหน้าจอตรงกลาง ภายใต้ Essentials เลือกเพิ่ม ID แอปพลิเคชัน URI
  3. ใส่ URI หรือยอมรับค่าเริ่มต้นตาม ID แอปของคุณ
  4. เลือกบันทึกและดําเนินการต่อ

ตัวอย่างในคู่มือนี้สมมุติว่าคุณกําลังใช้รูปแบบ Application ID URI ตามค่าเริ่มต้น (ตัวอย่างเช่น - api://44994a60-7f50-4eca-86b2-5d44f873f93f)

กําหนดค่าขอบเขต

ขอบเขตถูกใช้เพื่อกําหนดสิทธิ์หรือความสามารถในการเข้าถึง API หรือข้อมูลในบริการของคุณ รายการขอบเขตที่สนับสนุนเป็นบริการเฉพาะ คุณต้องการกําหนดชุดขอบเขตที่น้อยที่สุดซึ่งตัวเชื่อมต่อของคุณจําเป็นต้องใช้ คุณจําเป็นต้องรับรองความถูกต้องอย่างน้อยหนึ่งขอบเขตสําหรับรหัสไคลเอ็นต์ Power Query

ถ้าแอปพลิเคชันทรัพยากรของคุณมีการกําหนดขอบเขตอยู่แล้ว คุณสามารถข้ามไปยัง ขั้นตอนถัดไปได้

ถ้าบริการของคุณไม่ได้ใช้สิทธิ์ตามขอบเขต คุณยังสามารถกําหนดขอบเขตเดียวที่ตัวเชื่อมต่อใช้ได้ (ไม่บังคับ) ใช้ประโยชน์จากขอบเขตนี้ในโค้ดบริการของคุณในอนาคต

ในตัวอย่างนี้ คุณกําหนดขอบเขตเดียวที่เรียกว่า Data.Read

  1. ไปที่หน้า ภาพรวมของแอปพลิเคชันทรัพยากร
  2. ภายใต้ จัดการ เลือก เปิดเผย API > เพิ่มขอบเขต
  3. สําหรับชื่อขอบเขต ให้ใส่ Data.Read
  4. สําหรับใครสามารถยินยอม ให้เลือกตัวเลือก ผู้ดูแลระบบและผู้ใช้
  5. กรอกชื่อที่แสดงและกล่องคําอธิบายที่เหลือ
  6. ตรวจสอบให้แน่ใจว่า สถานะ ถูกตั้งค่าเป็น เปิดใช้งานแล้ว
  7. เลือก เพิ่มขอบเขต

รับรองแอปพลิเคชันไคลเอ็นต์ 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 ล่วงหน้า:

  1. ไปที่หน้า ภาพรวมของแอปพลิเคชันทรัพยากร
  2. ภายใต้ จัดการ เลือก เปิด API
  3. เลือก เพิ่มแอปพลิเคชันไคลเอ็นต์
  4. ป้อนหนึ่งในรหัสไคลเอ็นต์ Power Query
  5. เลือกขอบเขตที่ได้รับอนุญาตที่เหมาะสม
  6. เลือก เพิ่มแอปพลิเคชัน
  7. ทําซ้ําขั้นตอนที่ 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 สําหรับแอปพลิเคชันทรัพยากรของคุณ