รักษาความปลอดภัย API โดยใช้การสมัครใช้งาน
เมื่อคุณเผยแพร่ API ผ่านการจัดการ API จะเป็นเรื่องง่ายและพบได้ทั่วไปในการเข้าถึง API เหล่านั้นโดยใช้คีย์การสมัครใช้งาน นักพัฒนาที่จําเป็นต้องใช้ API ที่เผยแพร่แล้วต้องมีคีย์การสมัครใช้งานที่ถูกต้องในคําขอ HTTP เมื่อพวกเขาเรียกใช้ API เหล่านั้น เกตเวย์การจัดการ API ปฏิเสธการเรียกใช้โดยไม่มีคีย์การสมัครใช้งานและการโทรจะไม่ถูกส่งต่อไปยังบริการหลังบ้าน
เพื่อรับคีย์การสมัครใช้งานสําหรับการเข้าถึง API จําเป็นต้องมีการสมัครใช้งาน การสมัครใช้งานโดยหลัก ๆ แล้วเป็นคอนเทนเนอร์ที่มีชื่อสําหรับคู่ของคีย์การสมัครใช้งาน นักพัฒนาที่จําเป็นต้องใช้ API ที่เผยแพร่แล้วสามารถรับการสมัครใช้งานได้ และพวกเขาไม่จําเป็นต้องได้รับการอนุมัติจากผู้เผยแพร่ API ผู้เผยแพร่ API ยังสามารถสร้างการสมัครใช้งานโดยตรงสําหรับผู้ใช้ API
โน้ต
การจัดการ API ยังสนับสนุนกลไกอื่น ๆ สําหรับการรักษาความปลอดภัยการเข้าถึง API รวมถึง: OAuth2.0, ใบรับรองไคลเอ็นต์ และรายการอนุญาต IP
การสมัครใช้งานและคีย์
คีย์การสมัครใช้งานเป็นคีย์ที่สร้างโดยอัตโนมัติที่ไม่ซ้ํากันซึ่งสามารถส่งผ่านในส่วนหัวของคําขอไคลเอ็นต์หรือเป็นพารามิเตอร์สตริงของคิวรี คีย์เกี่ยวข้องโดยตรงกับการสมัครใช้งาน ซึ่งสามารถกําหนดขอบเขตไปยังพื้นที่ต่าง ๆ ได้ การสมัครใช้งานช่วยให้คุณสามารถควบคุมสิทธิ์และนโยบายได้อย่างละเอียด
ขอบเขตการสมัครใช้งานหลักสามรายการคือ:
| ขอบเขต | ราย ละเอียด |
|---|---|
| API ทั้งหมด | ใช้กับทุก API ที่สามารถเข้าถึงได้จากเกตเวย์ |
| API เดียว | ขอบเขตนี้ใช้กับ API ที่นําเข้าเพียงครั้งเดียวและจุดสิ้นสุดทั้งหมด |
| ผลิตภัณฑ์ | ผลิตภัณฑ์คือคอลเลกชันของ API อย่างน้อยหนึ่งรายการที่คุณกําหนดค่าในการจัดการ API คุณสามารถกําหนด API ให้กับผลิตภัณฑ์ได้มากกว่าหนึ่งรายการ ผลิตภัณฑ์สามารถมีกฎการเข้าถึง โควตาการใช้งาน และข้อกําหนดการใช้ที่แตกต่างกันได้ |
แอปพลิเคชันที่เรียกใช้ API ที่ได้รับการป้องกันต้องมีคีย์ในทุกคําขอ
คุณสามารถสร้างคีย์การสมัครใช้งานเหล่านี้ใหม่ได้ตลอดเวลา
รูป
การสมัครใช้งานทุกรายการจะมีสองคีย์ รายการหลัก และคีย์รอง การมีคีย์สองคีย์ทําให้ง่ายขึ้นเมื่อคุณจําเป็นต้องสร้างคีย์ใหม่ ตัวอย่างเช่น ถ้าคุณต้องการเปลี่ยนคีย์หลักและหลีกเลี่ยงการหยุดทํางาน ให้ใช้คีย์รองในแอปของคุณ
สําหรับผลิตภัณฑ์ที่เปิดใช้งานการสมัครใช้งาน ไคลเอ็นต์ต้องใส่คีย์เมื่อเรียกใช้ API ในผลิตภัณฑ์นั้น นักพัฒนาสามารถรับคีย์โดยการส่งคําขอการสมัครใช้งาน ถ้าคุณอนุมัติคําขอ คุณต้องส่งคีย์การสมัครใช้งานอย่างปลอดภัย ตัวอย่างเช่น ในข้อความที่เข้ารหัสลับ ขั้นตอนนี้เป็นส่วนหลักของเวิร์กโฟลว์การจัดการ API
เรียกใช้ API ด้วยคีย์การสมัครใช้งาน
แอปพลิเคชันต้องมีคีย์ที่ถูกต้องในคําขอ HTTP ทั้งหมดเมื่อเรียกใช้ไปยังจุดสิ้นสุด API ที่ได้รับการป้องกันโดยการสมัครใช้งาน สามารถส่งผ่านคีย์ในส่วนหัวของคําขอหรือเป็นสตริงแบบสอบถามใน URL
ชื่อส่วนหัวตามค่าเริ่มต้นคือ Ocp-Apim-Subscription-Keyและสตริงคิวรีเริ่มต้นคือ คีย์การสมัครใช้งาน
หากต้องการทดสอบการเรียกใช้ API ของคุณ คุณสามารถใช้พอร์ทัลนักพัฒนาหรือเครื่องมือบรรทัดคําสั่ง เช่น curlได้ นี่คือตัวอย่างของคําขอ GET โดยใช้พอร์ทัลนักพัฒนา ซึ่งแสดงส่วนหัวของคีย์การสมัครใช้งาน:
พอร์ทัลนักพัฒนา
นี่คือวิธีที่คุณสามารถส่งคีย์ในส่วนหัวของคําขอโดยใช้ curl:
curl --header "Ocp-Apim-Subscription-Key: <key string>" https://<apim gateway>.azure-api.net/api/path
นี่คือตัวอย่าง curl คําสั่งที่ส่งผ่านคีย์ใน URL เป็นสตริงคิวรี:
curl https://<apim gateway>.azure-api.net/api/path?subscription-key=<key string>
ถ้าคีย์ไม่ได้ถูกส่งผ่านในส่วนหัว หรือเป็นสตริงแบบสอบถามใน URL คุณจะได้รับการตอบสนอง ปฏิเสธการเข้าถึง 401 จากเกตเวย์ API