การตรวจสอบความถูกต้องของโทเค็น ID ในแอพ Azure Logic นั้นเกี่ยวข้องกับหลายขั้นตอนโดยมุ่งเน้นที่การสร้างความมั่นใจว่าโทเค็นนั้นเป็นของแท้และไม่ได้ถูกดัดแปลง นี่คือวิธีที่คุณสามารถเข้าหาสิ่งนี้ได้:
1. เข้าใจรหัส ID: โทเค็น ID คือ JSON Web Tokens (JWTS) ที่ออกโดยเซิร์ฟเวอร์การอนุญาตเพื่อยืนยันตัวตนของผู้ใช้ พวกเขามีการเรียกร้องเกี่ยวกับผู้ใช้และใช้สำหรับการตรวจสอบไม่ใช่การอนุญาต [3]
2. ตรวจสอบโทเค็น:
- ผู้ออก: ตรวจสอบให้แน่ใจว่าโทเค็นออกโดยหน่วยงานที่คาดหวังเช่น `https://login.microsoftonline.com/ {tenantid}/v2.0`
- ผู้ชม: ตรวจสอบว่าโทเค็นมีไว้สำหรับแอปพลิเคชันของคุณโดยการตรวจสอบการเรียกร้อง `aud` ตรงกับรหัสลูกค้าของแอปพลิเคชันของคุณ
- การประทับเวลา: ตรวจสอบว่า `iat`,` nbf` และ `exp` timestamps นั้นถูกต้องทำให้โทเค็นไม่หมดอายุหรือยังไม่ถูกต้อง [3]
3. ใช้ไลบรารีการตรวจสอบความถูกต้อง: แทนที่จะตรวจสอบความถูกต้องด้วยตนเองให้ใช้ห้องสมุดที่ออกแบบมาสำหรับการตรวจสอบ JWT เพื่อตรวจสอบลายเซ็นและการเรียกร้อง วิธีการนี้ช่วยป้องกันข้อผิดพลาดทั่วไปและสร้างความมั่นใจในความปลอดภัย [3]
4. รวมกับแอพ Azure Logic:
- ในแอพลอจิกของคุณคุณสามารถใช้ตัวเลือกการตรวจสอบความถูกต้องเพื่อตรวจสอบโทเค็น ตัวอย่างเช่นคุณสามารถตั้งค่านโยบายการอนุญาตที่ตรวจสอบผู้ออกและการเรียกร้องผู้ชม [9]
- ใช้มุมมองรหัสของแอพลอจิกเพื่อรวมส่วนหัวการอนุญาตในเอาต์พุตทริกเกอร์ช่วยให้คุณสามารถเข้าถึงและตรวจสอบโทเค็นภายในเวิร์กโฟลว์ของคุณ [9]
5. ตัวตนที่มีการจัดการเพื่อความปลอดภัยที่เพิ่มขึ้น:
- ในขณะที่ไม่เกี่ยวข้องโดยตรงกับการตรวจสอบโทเค็น ID การใช้ตัวตนที่มีการจัดการในแอพ Azure Logic สามารถปรับปรุงความปลอดภัยโดยรวมโดยไม่จำเป็นต้องจัดการข้อมูลรับรองสำหรับการตรวจสอบความถูกต้อง [2] [11]
โดยทำตามขั้นตอนเหล่านี้คุณสามารถตรวจสอบโทเค็น ID ภายในแอพ Azure Logic ได้อย่างมีประสิทธิภาพเพื่อให้มั่นใจว่าผู้ใช้ที่ได้รับการรับรองความถูกต้องเท่านั้นที่สามารถเรียกเวิร์กโฟลว์ของคุณได้
การอ้างอิง:
[1] https://www.linkedin.com/pulse/Securing-Request-request-triggered-logic-apps-using-azure-senih
[2] https://docs.azure.cn/en-us/logic-apps/logic-apps-securing-a-logic-app
[3] https://docs.azure.cn/en-us/entra/identity-platform/id-tokens
[4] https://stackoverflow.com/questions/50239472/how-to-use-odata-id-in-json-body-when-ising-the-http-action-in-azure-logic-ap/502517799
[5] https://stackoverflow.com/questions/58821345/logic-app-calling-webapi-with-managed-identity-what-kind-of-token-is-added-to-re
[6] https://www.youtube.com/watch?v=TGJIC_GO1QK
[7] https://www.youtube.com/watch?v=zvijhve0muu
[8] https://github.com/azure/azure-functions-host/issues/10532
[9] https://autosysops.com/blog/parse-jwt-tokens-in-azure-logic-apps
[10] https://learn.microsoft.com/en-us/azure/logic-apps/logic-apps-custom-api-authentication
[11] https://learn.microsoft.com/en-us/azure/logic-apps/authenticate-with-managed-identity