ส่วนที่ 2: สร้างและทดสอบคีย์ API

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่ เอกสารประกอบของ Apigee X
info

ปรับโครงสร้างและเปลี่ยนเส้นทางไปที่หัวข้อรักษาความปลอดภัย API โดย กำหนดให้ใช้คีย์ API

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

การเผยแพร่คือกระบวนการทำให้ API พร้อมใช้งานสำหรับนักพัฒนาแอปเพื่อ ใช้งาน การเผยแพร่ API สามารถกำหนดได้กว้างๆ โดยงานต่อไปนี้

  1. สร้างผลิตภัณฑ์ API ใน Apigee Edge ที่รวม API ของคุณ
  2. ลงทะเบียนนักพัฒนาแอปใน Edge มีเพียงนักพัฒนาแอปที่ลงทะเบียนแล้วเท่านั้นที่ลงทะเบียนแอปได้
  3. นักพัฒนาซอฟต์แวร์ลงทะเบียนแอปใน Edge เพื่อเข้าถึงผลิตภัณฑ์ API เมื่อลงทะเบียนแล้ว นักพัฒนาซอฟต์แวร์ จะได้รับคีย์ API เมื่อนักพัฒนาซอฟต์แวร์มีคีย์ API แล้ว ก็จะส่งคำขอไปยัง API ของคุณได้

ดูข้อมูลเพิ่มเติมได้ที่หัวข้อข้อมูลเบื้องต้นเกี่ยวกับการเผยแพร่

ตารางต่อไปนี้กำหนดคำบางคำที่ใช้ในการลงทะเบียนแอปและสร้างคีย์

คำศัพท์ คำจำกัดความ
ผลิตภัณฑ์ API ชุดพร็อกซี API ที่รวมกับแพ็กเกจบริการซึ่งกำหนดขีดจำกัดการเข้าถึง API เหล่านั้น ผลิตภัณฑ์ API เป็นกลไกส่วนกลางที่ Apigee Edge ใช้สำหรับการให้สิทธิ์ และการควบคุมการเข้าถึง API ของคุณ
นักพัฒนาซอฟต์แวร์ ผู้ใช้ API นักพัฒนาซอฟต์แวร์เขียนแอปที่ส่งคำขอไปยัง API ของคุณ
แอป แอปฝั่งไคลเอ็นต์ที่นักพัฒนาซอฟต์แวร์ลงทะเบียนเพื่อเข้าถึงผลิตภัณฑ์ API การลงทะเบียน แอปกับผลิตภัณฑ์ API จะสร้างคีย์ API สำหรับเข้าถึง API ในผลิตภัณฑ์นั้น
คีย์ API สตริงที่มีข้อมูลการให้สิทธิ์ที่แอปฝั่งไคลเอ็นต์ใช้เพื่อเข้าถึง ทรัพยากรที่ผลิตภัณฑ์ API เปิดเผย ระบบจะสร้างคีย์ API เมื่อเชื่อมโยงแอปที่ลงทะเบียนไว้กับผลิตภัณฑ์ API

ข้อกำหนดเบื้องต้นสำหรับบทแนะนำนี้

บทแนะนำนี้ถือว่าคุณได้ทำบทแนะนำแรกเสร็จแล้ว ซึ่งคุณสร้างพร็อกซี API เพื่อเข้าถึง Yahoo Weather API หากยังไม่ได้ทำบทแนะนำแรก โปรดดูหัวข้อ รักษาความปลอดภัย API โดยกำหนดให้ใช้คีย์ API

ขั้นตอนที่ 1: สร้างผลิตภัณฑ์ API

  1. ใน UI การจัดการ ให้คลิกแท็บเผยแพร่ แล้วคลิก ผลิตภัณฑ์
  2. คลิก (+) ผลิตภัณฑ์
  3. ป้อนหรือเลือกค่าต่อไปนี้ในช่องของกล่องโต้ตอบ "เพิ่มผลิตภัณฑ์"
    ช่อง ค่า
    ชื่อ ผลิตภัณฑ์ API ฟรี
    ชื่อที่แสดง ผลิตภัณฑ์ API ฟรี
    คำอธิบาย ผลิตภัณฑ์ API ฟรี
    สภาพแวดล้อม ทดสอบ
    การเข้าถึง ภายในเท่านั้น
    ประเภทการอนุมัติคีย์ อัตโนมัติ
    (ระบบจะอนุมัติคีย์ API โดยอัตโนมัติหลังจากสร้างคีย์แล้ว)
    Quota 10 คำขอต่อ 1 ชั่วโมง
    (จำกัดจำนวนคำขอไว้ที่ 10 คำขอต่อชั่วโมง)
    ขอบเขต OAuth ที่อนุญาต เว้นว่างไว้

    กล่องโต้ตอบที่กรอกข้อมูลแล้วควรมีลักษณะดังนี้

  4. ในส่วน "ทรัพยากร" ให้เลือกตัวเลือกต่อไปนี้
    • พร็อกซี API: weatherapikey
    • การแก้ไข: 1
    • เส้นทางทรัพยากร: /forecastrss**

      เส้นทางทรัพยากร จะระบุ URI ของทรัพยากรที่ผลิตภัณฑ์อนุญาตให้ แอปเข้าถึง ในตัวอย่างนี้ แอปจะเข้าถึงทรัพยากร /forecastrss ในพร็อกซี weatherapikey ผ่านผลิตภัณฑ์ API นี้ได้เท่านั้น การพยายามใช้ผลิตภัณฑ์ API นี้ เพื่อเข้าถึงทรัพยากรอื่นๆ ในพร็อกซี weatherapiproxy หรือใน พร็อกซีอื่นๆ จะไม่ได้รับอนุญาต

      อนุญาตให้ใช้อักขระไวลด์การ์ดสำหรับเส้นทางทรัพยากร ไวลด์การ์ด "/**" หมายความว่าระบบจะรวม URI ย่อยทั้งหมด ซึ่งหมายถึงทรัพยากรในรูปแบบ /forecastrss/foo/bar ไวลด์การ์ด "/" หมายความว่าระบบจะรวมเฉพาะ URI ที่อยู่ระดับต่ำกว่าลงมา 1 ระดับ ดูข้อมูลเพิ่มเติมได้ที่หัวข้อสร้างผลิตภัณฑ์ API

      โปรดทราบว่ารายการแบบเลื่อนลงเส้นทางทรัพยากร จะแสดงโฟลว์ แบบมีเงื่อนไขทั้งหมดที่กำหนดไว้ในพร็อกซี API ที่ระบุ โฟลว์แบบมีเงื่อนไขของพร็อกซี API จะกำหนด ตรรกะหรือขั้นตอนการประมวลผลที่เชื่อมโยงกับเส้นทางทรัพยากร ผลิตภัณฑ์ API จะควบคุมการเข้าถึง เส้นทางทรัพยากรเหล่านั้น
  5. คลิกนำเข้าทรัพยากร ระบบจะเพิ่มเส้นทางทรัพยากร และเพิ่มพร็อกซี API weatherapikey ลงในส่วนพร็อกซี API สำหรับ ผลิตภัณฑ์ โดยอัตโนมัติ
  6. คลิกบันทึก ผลิตภัณฑ์ใหม่จะปรากฏในหน้าผลิตภัณฑ์

ดูข้อมูลเพิ่มเติม

ขั้นตอนที่ 2: ลงทะเบียนนักพัฒนาซอฟต์แวร์

หากต้องการสร้างคีย์ API คุณต้องลงทะเบียนแอปและเชื่อมโยงแอปกับผลิตภัณฑ์ API อย่างไรก็ตาม คุณ จะลงทะเบียนแอปไม่ได้หากไม่ได้ลงทะเบียนนักพัฒนาแอปก่อน

  1. ใน UI การจัดการ ให้คลิกแท็บเผยแพร่ แล้วคลิก นักพัฒนาซอฟต์แวร์
  2. คลิก (+) นักพัฒนาซอฟต์แวร์
  3. ป้อนค่าต่อไปนี้ในกล่องโต้ตอบ "นักพัฒนาซอฟต์แวร์ใหม่"
    • ชื่อ: Jane
    • นามสกุล: Tutorial
    • อีเมล: janetutorial@example.com
    • ชื่อผู้ใช้: jtutorial
  4. คลิกบันทึก นักพัฒนาซอฟต์แวร์ใหม่จะปรากฏในรายการนักพัฒนาซอฟต์แวร์ในหน้า นักพัฒนาซอฟต์แวร์

ดูข้อมูลเพิ่มเติม

ขั้นตอนที่ 3: ลงทะเบียนแอป

เมื่อมีผลิตภัณฑ์ API และนักพัฒนาซอฟต์แวร์แล้ว คุณก็ลงทะเบียนแอปกับผลิตภัณฑ์ API ได้ การลงทะเบียนแอปจะสร้างคีย์ API สำหรับผลิตภัณฑ์ API ที่เชื่อมโยงกับแอป จากนั้นคุณสามารถเผยแพร่คีย์ดังกล่าวให้นักพัฒนาแอปเพื่อให้นักพัฒนาเข้าถึงฟีเจอร์ต่างๆ ในผลิตภัณฑ์ API จากแอปได้

  1. ใน UI ของแพลตฟอร์ม API ให้คลิกแท็บเผยแพร่ แล้วคลิกแอปของนักพัฒนาซอฟต์แวร์
  2. คลิก (+) แอปของนักพัฒนาซอฟต์แวร์
  3. ป้อนค่าต่อไปนี้ในกล่องโต้ตอบ "เพิ่มแอป"
    • ชื่อที่แสดง: Weather API Key App
    • นักพัฒนาซอฟต์แวร์: Jane Tutorial (janetutorial@example.com)
    • URL ของ Callback: เว้นว่างไว้
  4. เชื่อมโยงแอปกับผลิตภัณฑ์โดยทำดังนี้
    1. ในส่วนผลิตภัณฑ์ ให้คลิก + ผลิตภัณฑ์
    2. เลือก ผลิตภัณฑ์ API ฟรี
    3. คลิกไอคอนเครื่องหมายถูก เพื่อยอมรับการเปลี่ยนแปลง
  5. คลิกบันทึก แอปใหม่จะปรากฏในรายการแอปในหน้าแอปของนักพัฒนาซอฟต์แวร์
  6. เลือก Weather API Key App ในรายการแอป ซึ่งจะเปิดหน้ารายละเอียดของแอป
  7. เนื่องจากคุณเลือกประเภทการอนุมัติคีย์: อัตโนมัติ เมื่อสร้างผลิตภัณฑ์ API ระบบจึงอนุมัติคีย์ API โดยอัตโนมัติและคุณจะดูคีย์ได้ทันที (หากเลือก ประเภทการอนุมัติ: ด้วยตนเอง คุณจะต้องคลิก อนุมัติ ในคอลัมน์ "การทำงาน" สำหรับผลิตภัณฑ์ API ฟรีเพื่ออนุมัติคีย์ API )
  8. ในส่วน "ผลิตภัณฑ์" ให้คลิก แสดง ในคอลัมน์คีย์ผู้ใช้ และข้อมูลลับของผู้ใช้ ข้างรายการสำหรับผลิตภัณฑ์ API ฟรีเพื่อแสดงคีย์ที่สร้างขึ้น

    คีย์ผู้ใช้เป็นชื่ออื่นของคีย์ API และเป็นคีย์เดียวที่แอปต้องใช้เพื่อ เข้าถึงทรัพยากรการพยากรณ์อากาศ ผ่านพร็อกซี API ของคุณ คุณต้องใช้ข้อมูลลับของผู้ใช้ (พร้อมกับคีย์ผู้ใช้) ใน การรักษาความปลอดภัย API ผ่าน OAuth 2.0 ดูตัวอย่างได้ที่ OAuth 2.0: การกำหนดค่าพร็อกซี API ใหม่

ดูข้อมูลเพิ่มเติม

ขั้นตอนที่ 4: ใช้คีย์ API ในคำขอ

คุณต้องทดสอบนโยบาย VerifyAPIKey โดยการเรียก พร็อกซี API ด้วยคีย์ API ที่ถูกต้องเพื่อให้แน่ใจว่านโยบายดังกล่าวทำงานอย่างถูกต้อง คุณสามารถส่งคำขอพร็อกซี API ในเบราว์เซอร์ จาก หน้า Trace ของพร็อกซี API จาก Apigee Console หรือโดยใช้ cURL URL ที่ใช้ส่งคำขอจะมีรูปแบบดังนี้

http://{org-name}-test.apigee.net/v1/weatherapikey/forecastrss?w=12797282&apikey=IEYRtW2cb7A5Gs54A1wKElECBL65GVls

แทนที่ {org-name} ด้วยชื่อองค์กร Apigee และแทนที่ค่า apikey ด้วยค่าที่ถูกต้อง

มองหาเนื้อหาต่อไปนี้ในการตอบกลับ

<rss xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" version="2.0"> 
<channel> <title>Yahoo! Weather - Palo Alto, CA</title> 
<link>http://us.rd.yahoo.com/dailynews/rss/weather/Palo_Alto__CA/*http://weather.yahoo.com/forecast/USCA1093_f.html</link> 
<description>Yahoo! Weather for Palo Alto, CA</description> <language>en-us</language>

หากไม่ใส่คีย์ API ในคำขอหรือระบุค่าคีย์ที่ไม่ถูกต้อง คุณจะได้รับการตอบกลับข้อผิดพลาดในรูปแบบต่อไปนี้

{"fault":{"faultstring":"Failed to resolve API Key variable null","detail":{"errorcode":"steps.oauth.v2.FailedToResolveAPIKey"}}}

ขั้นตอนที่ 5: สิ่งที่ต้องทำต่อไป

เมื่อส่งคำขอไปยัง API โดยใช้พารามิเตอร์การค้นหาเพื่อส่งคีย์ API แล้ว ให้แก้ไข API เพื่อส่งคีย์เป็นส่วนหัว

ทำต่อในหัวข้อ รักษาความปลอดภัย API โดย กำหนดให้ใช้คีย์ API