แชร์ผ่าน


ตั้งค่าข้อมูลประจําตัวที่มีการจัดการของ Power Platform สําหรับปลั๊กอิน Dataverse หรือแพคเกจปลั๊กอิน

ข้อมูลประจําตัวที่มีการจัดการของ Power Platform อนุญาตให้ปลั๊กอิน Dataverse หรือแพคเกจปลั๊กอินเชื่อมต่อกับทรัพยากร Azure เพื่อสนับสนุนข้อมูลประจําตัวที่มีการจัดการโดยไม่จําเป็นต้องมีข้อมูลประจําตัว บทความนี้จะช่วยคุณตั้งค่าข้อมูลประจำตัวที่มีการจัดการในสภาพแวดล้อม Power Platform ของคุณ

ข้อกำหนดเบื้องต้น

  • การสมัครใช้งาน Azure ที่มีสิทธิ์เข้าถึงการจัดเตรียมข้อมูลประจำตัวที่มีการจัดการที่ผู้ใช้กำหนด (UAMI) หรือการลงทะเบียนแอปพลิเคชัน
  • เครื่องมือสําหรับปลั๊กอินหรือแพคเกจปลั๊กอิน:
  • ใบรับรองที่ถูกต้องสำหรับการเซ็นชื่อใน แอสเซมบลีของปลั๊กอิน

ตั้งค่าข้อมูลประจำตัวที่มีการจัดการ

ในการกําหนดค่าข้อมูลประจําตัวที่มีการจัดการของ Power Platform สําหรับปลั๊กอิน Dataverse หรือแพคเกจปลั๊กอิน ให้ทําตามขั้นตอนต่อไปนี้

  1. สร้างการลงทะเบียนแอปใหม่หรือข้อมูลประจำตัวที่มีการจัดการที่ผู้ใช้กำหนด
  2. กำหนดค่าข้อมูลรับรองข้อมูลประจำตัวที่รวมกัน
  3. สร้างและลงทะเบียนปลั๊กอิน Dataverse หรือแพคเกจปลั๊กอิน
    ตรวจสอบให้แน่ใจว่าได้สร้างแอสเซมบลีปลั๊กอินและลงทะเบียนปลั๊กอินหรือแพคเกจปลั๊กอิน
  4. สร้างระเบียนไอดีที่มีการจัดการใน Dataverse
  5. ให้สิทธิ์การเข้าถึงทรัพยากร Azure ไปยังแอปพลิเคชันหรือข้อมูลประจําตัวที่จัดการโดยผู้ใช้ (UAMI)
  6. ตรวจสอบความถูกต้องของการรวมปลั๊กอิน

สร้างการลงทะเบียนแอปใหม่หรือข้อมูลประจำตัวที่มีการจัดการที่ผู้ใช้กำหนด

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

  • ถ้าคุณต้องการข้อมูลประจําตัวของแอปที่เชื่อมโยงกับปลั๊กอินที่เชื่อมต่อกับทรัพยากร Azure เช่น Azure Key Vault ให้ใช้การลงทะเบียนแอปพลิเคชัน ด้วยข้อมูลประจำตัวของแอป คุณสามารถใช้นโยบาย Azure กับปลั๊กอินที่เข้าถึงทรัพยากร Azure ได้
  • หากคุณต้องการให้โครงร่างสําคัญของบริการเข้าถึงทรัพยากร Azure เช่น Azure Key Vault คุณสามารถเตรียมใช้งานข้อมูลประจําตัวที่ได้รับการจัดการโดยผู้ใช้

หมายเหตุ

กรุณาบันทึกรหัสต่อไปนี้เพื่อใช้ในขั้นตอนต่อไป

  • ID แอปพลิเคชัน (ไคลเอนต์)
  • รหัสผู้เช่า

กำหนดค่าข้อมูลรับรองข้อมูลประจำตัวที่รวมกัน

เมื่อต้องการกำหนดค่าข้อมูลประจำตัวที่มีการจัดการ ให้เปิดข้อมูลประจำตัวที่มีการจัดการที่ผู้ใช้กำหนดหรือแอปพลิเคชัน Microsoft Entra ID ในพอร์ทัล Azure ที่คุณสร้างไว้ในส่วนก่อนหน้า

  1. ไปที่ พอร์ทัล Azure
  2. ไปยัง Microsoft Entra ID
  3. เลือก การลงทะเบียนแอป
  4. เปิดแอปที่คุณสร้างไว้ใน ตั้งค่าข้อมูลประจำตัวที่มีการจัดการ
  5. นําทางไปยัง ใบรับรองและความลับ
  6. เลือกแท็บ ข้อมูลประจําตัวภายนอก และเลือก เพิ่มข้อมูลประจําตัว
  7. เลือกผู้ออกเป็น ผู้ออกอื่นๆ
  8. ใส่ข้อมูลต่อไปนี้:

ผู้ออก

ใช้ผู้ออก v2.0 ของผู้เช่า:

https://login.microsoftonline.com/{tenantID}/v2.0

ตัวอย่าง

https://login.microsoftonline.com/5f8a1a9f-2e1a-415f-b10c-84c3736a21b9/v2.0

ประเภท

เลือก ตัวระบุหัวเรื่องที่ชัดเจน

ตัวระบุหัวเรื่อง

เลือกรูปแบบที่ตรงกับชนิดใบรับรองของคุณ:

  • ใบรับรองแบบลงนามด้วยตนเอง (เฉพาะการพัฒนาเท่านั้น):

    /eid1/c/pub/t/{encodedTenantId}/a/qzXoWDkuqUa3l6zM5mM0Rw/n/plugin/e/{environmentId}/h/{hash}
    
  • ใบรับรองผู้ออกที่เชื่อถือได้ (แนะนําสําหรับการผลิต):

    /eid1/c/pub/t/{encodedTenantId}/a/qzXoWDkuqUa3l6zM5mM0Rw/n/plugin/e/{environmentId}/i/{issuer}/s/{certificateSubject}
    

การอ้างอิงเซกเมนต์

เซ็กเมนต์ คำอธิบาย
eid1 เวอร์ชันรูปแบบข้อมูลประจําตัว
c/pub รหัสระบบคลาวด์สําหรับระบบคลาวด์สาธารณะ ชุมชน Cloud สําหรับส่วนราชการ (GCC) และสถานีการวางจําหน่ายครั้งแรกใน GCC
t/{encodedTenantId} รหัสผู้เช่า
a/qzXoWDkuqUa3l6zM5m0Rw/ ใช้งานภายในเท่านั้น อย่าปรับเปลี่ยน
n/ปลั๊กอิน คอมโพเนนต์ปลั๊กอิน
e/{environmentId} รหัสสภาพแวดล้อม
h/{hash} SHA-256 ของใบรับรอง (ที่เซ็นชื่อด้วยตนเองเท่านั้น)
i/{issuer}
s/{certificateSubject}
รายละเอียดผู้ออกที่เชื่อถือได้

สร้างใบรับรองแบบลงนามด้วยตนเอง

ปลั๊กอินทุกตัวต้องมีข้อมูลประจําตัวที่สามารถตรวจสอบได้ และใบรับรองการลงชื่อทําหน้าที่เป็นลายนิ้วมือที่ไม่ซ้ํากันของปลั๊กอิน โค้ดต่อไปนี้เป็นตัวอย่างส่วนย่อยของ PowerShell ที่คุณสามารถใช้เพื่อสร้างใบรับรองแบบลงนามด้วยตนเองสําหรับสถานการณ์การพัฒนาหรือการทดสอบ สําหรับการอ้างอิง คุณสามารถทําตามได้จากตัวอย่างที่ 3

 $params = @{
     Type = 'Custom'
     Subject = 'E=admin@contoso.com,CN=Contoso'
     TextExtension = @(
         '2.5.29.37={text}1.3.6.1.5.5.7.3.4',
         '2.5.29.17={text}email=admin@contoso.com' )
     KeyAlgorithm = 'RSA'
     KeyLength = 2048
     SmimeCapabilities = $true
     CertStoreLocation = 'Cert:\CurrentUser\My'
 }
 New-SelfSignedCertificate @params

หมายเหตุ

การเข้ารหัสสําหรับ {encodedTenantId}

  1. แปลง GUID → Hex
  2. แปลง Hex → Base64URL (ไม่ใช่ Base64 มาตรฐาน)

แฮชที่เซ็นชื่อด้วยตนเอง

  • คํานวณ SHA-256 ผ่าน.cer ถ้าคุณมี .pfx ให้ส่งออก .cer ก่อน:
    CertUtil -hashfile <CertificateFilePath> SHA256
    
    $cert = Get-PfxCertificate -FilePath "path	o\your.pfx"
    $cert.RawData | Set-Content -Encoding Byte -Path "extracted.cer"
    

สภาพแวดล้อมระบบคลาวด์ Azure แบบพิเศษ

ตั้งค่า ผู้ชมURL ผู้ออกและ คํานําหน้าหัวเรื่อง อย่างชัดเจนเมื่อปรับใช้นอกคลาวด์สาธารณะ GCC และสถานีการวางจําหน่ายครั้งแรกใน GCC:

ระบบคลาวด์ กลุ่มเป้าหมาย URL ผู้ออก คํานําหน้าหัวเรื่อง
GCC High & DoD api://AzureADTokenExchangeUSGov https://login.microsoftonline.us /eid1/c/usg
มูนเค้ก (จีน) api://AzureADTokenExchangeChina https://login.partner.microsoftonline.cn /eid1/c/chn
US National (USNAT) api://AzureADTokenExchangeUSNat https://login.microsoftonline.eaglex.ic.gov /eid1/c/uss
US Secure (USSec) api://AzureADTokenExchangeUSSec https://login.microsoftonline.scloud /eid1/c/usn

หมายเหตุ

ค่า Audience ต้อง ตรงตามตัวพิมพ์ใหญ่-เล็ก และต้องตรงกันเท่านั้น
สําหรับระบบคลาวด์สาธารณะ GCC และสถานีการวางจําหน่ายครั้งแรกใน GCC (และระบบคลาวด์ที่ไม่ได้อยู่ในรายการ), ค่าเริ่มต้นคือ:
ผู้ชม api://AzureADTokenExchange, ผู้ออก https://login.microsoftonline.com, คำนำหน้าชื่อเรื่อง /eid1/c/pub

สร้างและลงทะเบียนปลั๊กอิน Dataverse หรือแพคเกจปลั๊กอิน

สร้างปลั๊กอินแอสเซมบลี

การบรรจุและการลงนาม

การลงชื่อในแพคเกจปลั๊กอิน

ถ้าคุณกําลังสร้างแพคเกจปลั๊กอิน ให้ใช้ NuGet Sign CLI เพื่อสร้างแพคเกจจาก .nuspec หรือไฟล์ .csproj หลังจากสร้างแพคเกจแล้ว ให้ลงชื่อด้วยใบรับรองของคุณ

 nuget sign YourPlugin.nupkg `
   -CertificatePath MyCert.pfx `
   -CertificatePassword "MyPassword" `
   -Timestamper http://timestamp.digicert.com

การลงชื่อดิจิทัลของแอสเซมบลีปลั๊กอิน

หากคุณกําลังลงทะเบียนปลั๊กอิน (แอสเซมบลี) ให้ลงนาม DLL ด้วยใบรับรองโดยใช้ SignTool.exe (เครื่องมือลงชื่อ)

signtool sign /f MyCert.pfx /p MyPassword /t http://timestamp.digicert.com /fd SHA256 MyAssembly.dll

คุณสามารถเพิ่มการประทับเวลาได้โดยระบุ URL ของเซิร์ฟเวอร์ประทับเวลาตามมาตรฐาน RFC 3161

หมายเหตุ

ใช้ใบรับรองแบบลงนามด้วยตนเองเพื่อวัตถุประสงค์ในการพัฒนาหรือการทดสอบเท่านั้น อย่าใช้ใบรับรองแบบลงนามด้วยตนเองในสภาพแวดล้อมการผลิต

ลงทะเบียนปลั๊กอิน

สร้างเรกคอร์ดข้อมูลประจำตัวที่มีการจัดการใน Dataverse

เพื่อเตรียมระเบียนข้อมูลประจำตัวที่มีการจัดการใน Dataverse ให้ทำตามขั้นตอนต่อไปนี้

  1. สร้างข้อมูลประจําตัวที่มีการจัดการโดยการส่งคําขอ HTTP POST กับไคลเอ็นต์ REST (เช่น Insomnia) ใช้ URL และเนื้อความคําขอในรูปแบบต่อไปนี้

    POST https://<<orgURL>>/api/data/v9.0/managedidentities
    

    อย่าลืมแทนที่ orgURL ด้วย URL ขององค์กร

  2. ให้แน่ใจว่า credentialsource ถูกตั้งค่าเป็น 2 ในส่วนข้อมูล ขอบเขต ถูกตั้งค่าเป็น 1 สําหรับสถานการณ์เฉพาะสภาพแวดล้อม และ เวอร์ชัน ถูกตั้งค่าเป็น 1 ในส่วนข้อมูล

    ส่วนข้อมูลตัวอย่าง

    {
      "applicationid": "<<appId>>", //Application Id, or ClientId, or User Managed Identity
      "managedidentityid": "<<anyGuid>>",
      "credentialsource": 2, // Managed client
      "subjectscope": 1, //Environment Scope
      "tenantid": "<<tenantId>>", //Entra Tenant Id
      "version": 1
    }
    
  3. ปรับปรุงแพคเกจปลั๊กอินหรือเรกคอร์ดของแอสเซมบลีปลั๊กอินโดยการออกคําขอ HTTP PATCH เพื่อเชื่อมโยงกับข้อมูลประจําตัวที่มีการจัดการที่สร้างขึ้นในขั้นตอนที่ 1

    แอสเซมบลีปลั๊กอิน

    PATCH https://<<orgURL>>/api/data/v9.0/pluginassemblies(<<PluginAssemblyId>>)
    

    แพคเกจปลั๊กอิน

    PATCH https://<<orgURL>>/api/data/v9.0/pluginpackages(<<PluginPackageId>>)
    

    ส่วนข้อมูลตัวอย่าง

    {
      "managedidentityid@odata.bind": "/managedidentities(<<ManagedIdentityGuid>>)"
    }
    

    ตรวจสอบให้แน่ใจว่าได้แทนที่ orgURL, PluginAssemblyId (หรือ PluginPackageId) และ ManagedIdentityGuid ด้วยค่าของคุณ

ให้สิทธิ์การเข้าถึงทรัพยากร Azure แก่แอปพลิเคชันหรือข้อมูลประจำตัวที่มีการจัดการที่ผู้ใช้กำหนด

หากคุณต้องการให้สิทธิ์การเข้าถึง ID แอปพลิเคชันเพื่อเข้าถึงทรัพยากร Azure เช่น Azure Key Vault ให้สิทธิ์การเข้าถึงแอปพลิเคชันหรือข้อมูลประจําตัวที่จัดการโดยผู้ใช้ไปยังทรัพยากรนั้น

ตรวจสอบความถูกต้องของการรวมปลั๊กอิน

ตรวจสอบว่าปลั๊กอินของคุณสามารถร้องขอการเข้าถึงทรัพยากร Azure ที่รองรับข้อมูลประจำตัวที่มีการจัดการได้อย่างปลอดภัย

คําถามที่พบบ่อย (FAQs)

ฉันจะแก้ไขข้อผิดพลาดนี้ได้อย่างไร

ถ้าคุณได้รับข้อผิดพลาดต่อไปนี้:
เกิดข้อผิดพลาด – ปัญหาด้านการกําหนดค่าทำให้ไม่สามารถรับรองความถูกต้องได้
AADSTS700213: ไม่พบระเบียนข้อมูลประจําตัวของภายนอกที่ตรงกัน

ทําตามขั้นตอนต่อไปนี้เพื่อแก้ไขปัญหา:

  1. ตรวจสอบให้แน่ใจว่า FIC ได้รับการกําหนดค่าและบันทึกไว้อย่างถูกต้อง

  2. ตรวจสอบว่าผู้ออก/หัวเรื่องตรงกับรูปแบบที่ระบุไว้ก่อนหน้านี้

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

ฉันจะแก้ไขข้อผิดพลาด "ไม่สามารถเข้าถึงหรือเชื่อมต่อกับ Power Platform" ได้อย่างไร?

โปรดดูช่วงที่อยู่ IP และ URL ของ Power Platform เพื่อให้แน่ใจว่า ปลายทาง Power Platform สามารถเข้าถึงได้และอยู่ในรายการอนุญาต