นโยบาย VerificationAPIKey

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

อะไร

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

ตัวอย่าง

คีย์ในพารามิเตอร์การค้นหา

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="request.queryparam.apikey" />
</VerifyAPIKey>

ในตัวอย่างนี้ นโยบายคาดว่าจะพบคีย์ API ในตัวแปรโฟลว์ที่ชื่อ request.queryparam.apikey ตัวแปร request.queryparam.{name} เป็นตัวแปรโฟลว์ Edge มาตรฐานที่ป้อนค่าของพารามิเตอร์การค้นหาที่ส่ง ในคำขอของไคลเอ็นต์

คำสั่ง curl ต่อไปนี้จะส่งคีย์ API ในพารามิเตอร์การค้นหา

curl http://myorg-test.apigee.net/mocktarget?apikey=IEYRtW2cb7A5Gs54A1wKElECBL65GVls

คีย์ในส่วนหัว

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="request.header.x-apikey" />
</VerifyAPIKey>

ในตัวอย่างนี้ นโยบายคาดว่าจะพบคีย์ API ในตัวแปรโฟลว์ที่ชื่อ request.header.x-apikey ตัวแปร request.header.{name} เป็นตัวแปรโฟลว์ Edge มาตรฐานที่สร้างขึ้นโดยมีค่าของส่วนหัวที่ส่งผ่าน ในคำขอของไคลเอ็นต์

cURL ต่อไปนี้แสดงวิธีส่งคีย์ API ในส่วนหัว

curl "http://myorg-test.apigee.net/mocktarget" -H "x-apikey:IEYRtW2cb7A5Gs54A1wKElECBL65GVls"

คีย์ในตัวแปร

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="requestAPIKey.key"/>
</VerifyAPIKey>

นโยบายสามารถอ้างอิงตัวแปรใดก็ได้ที่มีคีย์ นโยบายในตัวอย่างนี้ จะดึงคีย์ API จากตัวแปรชื่อ requestAPIKey.key

คุณเป็นผู้กำหนดวิธีป้อนข้อมูลตัวแปรนั้น ตัวอย่างเช่น คุณสามารถใช้นโยบาย Extract Variables เพื่อป้อนข้อมูล requestAPIKey.key จากพารามิเตอร์การค้นหา ชื่อ myKey ดังที่แสดง ด้านล่าง

<ExtractVariables async="false" continueOnError="false" enabled="true" name="SetAPIKeyVar">
    <Source>request</Source>
    <QueryParam name="myKey">
        <Pattern ignoreCase="true">{key}</Pattern>
    </QueryParam>
    <VariablePrefix>requestAPIKey</VariablePrefix>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
</ExtractVariables>

ตัวแปรโฟลว์ของนโยบายการเข้าถึง

<AssignMessage async="false" continueOnError="false" enabled="true" name="accessverifyvars">
    <AssignVariable>
        <Name>devFirstName</Name>
        <Ref>verifyapikey.verify-api-key.developer.firstName</Ref>
        <Value>ErrorOnCopy</Value>
    </AssignVariable>
    <AssignVariable>
        <Name>devLastName</Name>
        <Ref>verifyapikey.verify-api-key.developer.lastName</Ref>
        <Value>ErrorOnCopy</Value>
    </AssignVariable>
    <AssignVariable>
        <Name>devEmail</Name>
        <Ref>verifyapikey.verify-api-key.developer.email</Ref>
        <Value>ErrorOnCopy</Value>
    </AssignVariable>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <AssignTo createNew="false" transport="http" type="request"/>
</AssignMessage>

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

ตัวแปรเหล่านี้ทั้งหมดมีคำนำหน้าดังนี้

verifyapikey.{policy_name}

ในตัวอย่างนี้ ชื่อนโยบายคีย์ API ที่ยืนยันคือ "verify-api-key" ดังนั้น คุณจึงอ้างอิง ชื่อแรกของนักพัฒนาแอปที่ส่งคำขอโดยเข้าถึงตัวแปร verifyapikey.verify-api-key.developer.firstName.

เรียนรู้เกี่ยวกับ Edge


เกี่ยวกับนโยบาย "ยืนยันคีย์ API"

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

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

คีย์ API สามารถใช้เป็นโทเค็นการตรวจสอบสิทธิ์ หรือใช้เพื่อรับโทเค็นเพื่อการเข้าถึง OAuth ได้ ใน OAuth คีย์ API จะเรียกว่า "รหัสไคลเอ็นต์" โดยใช้ชื่อแทนกันได้ ดูข้อมูลเพิ่มเติมได้ที่หน้าแรกของ OAuth

Edge จะสร้างชุดตัวแปรโฟลว์โดยอัตโนมัติเมื่อดำเนินการตามนโยบาย Verify API Key ดูข้อมูลเพิ่มเติมได้ที่ตัวแปรโฟลว์ด้านล่าง

การอ้างอิงองค์ประกอบ

ต่อไปนี้คือองค์ประกอบและแอตทริบิวต์ที่คุณกำหนดค่าในนโยบายนี้ได้

<VerifyAPIKey async="false" continueOnError="false" enabled="true" name="Verify-API-Key-1">
    <DisplayName>Custom label used in UI</DisplayName>
    <APIKey ref="variable_containing_api_key"/>
</VerifyAPIKey>

แอตทริบิวต์ <VerifyAPIKey>

ตัวอย่างต่อไปนี้แสดงแอตทริบิวต์ในแท็ก <VerifyAPIKey>

<VerifyAPIKey async="false" continueOnError="false" enabled="true" name="Verify-API-Key-1">

ตารางต่อไปนี้อธิบายแอตทริบิวต์ทั่วไปในองค์ประกอบระดับบนสุดของนโยบายทั้งหมด

แอตทริบิวต์ คำอธิบาย ค่าเริ่มต้น การมีบุคคลอยู่
name

ชื่อภายในของนโยบาย ค่าของแอตทริบิวต์ name สามารถ ประกอบด้วยตัวอักษร ตัวเลข การเว้นวรรค ขีดกลางสั้น ขีดล่าง และจุด ค่านี้ไม่สามารถ เกิน 255 อักขระ

(ไม่บังคับ) ใช้องค์ประกอบ <DisplayName> เพื่อติดป้ายกำกับนโยบายใน เครื่องมือแก้ไขพร็อกซี UI การจัดการด้วยชื่อที่เป็นภาษาธรรมชาติต่างกัน

ไม่มี ต้องระบุ
continueOnError

ตั้งค่าเป็น false เพื่อแสดงผลข้อผิดพลาดเมื่อนโยบายล้มเหลว เป็นเรื่องปกติ พฤติกรรมสำหรับนโยบายส่วนใหญ่

ตั้งค่าเป็น true เพื่อให้ดำเนินการตามขั้นตอนได้อย่างต่อเนื่องแม้จะมีนโยบายแล้วก็ตาม ล้มเหลว

เท็จ ไม่บังคับ
enabled

ตั้งค่าเป็น true เพื่อบังคับใช้นโยบาย

ตั้งค่าเป็น false เพื่อปิดนโยบาย นโยบายจะไม่ บังคับใช้ แม้ว่าจะยังคงแนบกับขั้นตอน

จริง ไม่บังคับ
async

แอตทริบิวต์นี้เลิกใช้งานแล้ว

เท็จ เลิกใช้

&lt;DisplayName&gt; องค์ประกอบ

ใช้เพิ่มเติมจากแอตทริบิวต์ name เพื่อติดป้ายกำกับนโยบายใน เครื่องมือแก้ไขพร็อกซี UI การจัดการด้วยชื่อที่เป็นภาษาธรรมชาติต่างกัน

<DisplayName>Policy Display Name</DisplayName>
ค่าเริ่มต้น

ไม่มี

หากไม่ใส่องค์ประกอบนี้ ค่าของแอตทริบิวต์ name ของนโยบายจะเป็น

การมีบุคคลอยู่ ไม่บังคับ
ประเภท สตริง

องค์ประกอบ <APIKey>

องค์ประกอบนี้ระบุตัวแปรโฟลว์ที่มีคีย์ API โดยปกติแล้ว ไคลเอ็นต์จะส่งคีย์ API ในพารามิเตอร์การค้นหา ส่วนหัว HTTP หรือพารามิเตอร์แบบฟอร์ม เช่น หากส่งคีย์ในส่วนหัว ที่ชื่อ x-apikey ระบบจะพบคีย์ในตัวแปร request.header.x-apikey

ค่าเริ่มต้น NA
การมีบุคคลอยู่ จำเป็น
ประเภท สตริง

Attributes

ตารางต่อไปนี้จะอธิบายแอตทริบิวต์ขององค์ประกอบ <APIKey>

แอตทริบิวต์ คำอธิบาย ค่าเริ่มต้น การมีบุคคลอยู่
ref

การอ้างอิงถึงตัวแปรที่มีคีย์ API อนุญาตให้มีตำแหน่งได้เพียง 1 แห่ง ต่อนโยบาย

ไม่มี จำเป็น

ตัวอย่าง

ในตัวอย่างเหล่านี้ ระบบจะส่งคีย์ในพารามิเตอร์และส่วนหัวที่ชื่อ x-apikey

เป็นพารามิเตอร์การค้นหา

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="request.queryparam.x-apikey"/>
</VerifyAPIKey>

ในส่วนหัว HTTP

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="request.header.x-apikey"/>
</VerifyAPIKey>

เป็นพารามิเตอร์แบบฟอร์ม HTTP

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="request.formparam.x-apikey"/>
</VerifyAPIKey>

สคีมา

ตัวแปรโฟลว์

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

นโยบายจะสร้างตัวแปรโฟลว์หลายประเภท ซึ่งรวมถึง

  • ทั่วไป
  • แอป
  • นักพัฒนาซอฟต์แวร์
  • บริษัท
  • Analytics

ตัวแปรโฟลว์แต่ละประเภทมีคำนำหน้าที่แตกต่างกัน ตัวแปรทั้งหมดเป็นสเกลาร์ ยกเว้นตัวแปรที่ระบุว่าเป็นอาร์เรย์โดยเฉพาะ

ตัวแปรโฟลว์ทั่วไป

ตารางต่อไปนี้แสดงตัวแปรโฟลว์ทั่วไปที่นโยบายตรวจสอบคีย์ API จะสร้างขึ้น ตัวแปรเหล่านี้ทั้งหมดมีคำนำหน้าดังนี้

verifyapikey.{policy_name}

เช่น verifyapikey.{policy_name}.client_id

ตัวแปรที่ใช้ได้มีดังนี้

ตัวแปร คำอธิบาย
client_id คีย์ผู้ใช้ (หรือที่เรียกว่าคีย์ API หรือคีย์แอป) ที่แอปที่ขอระบุ
client_secret ข้อมูลลับของผู้บริโภคที่เชื่อมโยงกับคีย์ของผู้บริโภค
redirection_uris URI การเปลี่ยนเส้นทางในคำขอ
developer.app.id

รหัสของแอปนักพัฒนาแอปที่ส่งคำขอ

developer.app.name ชื่อแอปของแอปนักพัฒนาซอฟต์แวร์ที่ส่งคำขอ
developer.id

รหัสของนักพัฒนาแอปที่ลงทะเบียนเป็นเจ้าของแอปที่ขอ

developer.{custom_attrib_name} แอตทริบิวต์ที่กำหนดเองซึ่งได้มาจากโปรไฟล์คีย์ของแอป
DisplayName ค่าของแอตทริบิวต์ <DisplayName> ของนโยบาย
failed ตั้งค่าเป็น "จริง" เมื่อการตรวจสอบคีย์ API ไม่สำเร็จ
{custom_app_attrib}

แอตทริบิวต์ที่กำหนดเองใดๆ ที่ได้มาจากโปรไฟล์แอป ระบุชื่อของแอตทริบิวต์ที่กำหนดเอง

apiproduct.name* ชื่อของผลิตภัณฑ์ API ที่ใช้เพื่อตรวจสอบคำขอ
apiproduct.{custom_attrib_name}* แอตทริบิวต์ที่กำหนดเองใดๆ ที่ได้มาจากโปรไฟล์ผลิตภัณฑ์ API
apiproduct.developer.quota.limit* โควต้าที่ตั้งไว้ในผลิตภัณฑ์ API หากมี
apiproduct.developer.quota.interval* ช่วงเวลาโควต้าที่ตั้งค่าไว้ในผลิตภัณฑ์ API หากมี
apiproduct.developer.quota.timeunit* หน่วยเวลาของโควต้าที่ตั้งค่าไว้ในผลิตภัณฑ์ API หากมี
* ระบบจะป้อนข้อมูลตัวแปรผลิตภัณฑ์ API โดยอัตโนมัติหากกำหนดค่าผลิตภัณฑ์ API ด้วยสภาพแวดล้อม พร็อกซี และทรัพยากรที่ถูกต้อง (ได้มาจากproxy.pathsuffix) ดูวิธีการตั้งค่าผลิตภัณฑ์ API ได้ที่การใช้ Edge Management API เพื่อเผยแพร่ API

ตัวแปรโฟลว์ของแอป

นโยบายจะป้อนข้อมูลเกี่ยวกับแอปในตัวแปรโฟลว์ต่อไปนี้ ตัวแปรเหล่านี้ทั้งหมดมีคำนำหน้าดังนี้

verifyapikey.{policy_name}.app

เช่น

verifyapikey.{policy_name}.app.name

ตัวแปรที่ใช้ได้มีดังนี้

ตัวแปร คำอธิบาย
name ชื่อแอป
id รหัสของแอป
accessType Apigee ไม่ได้ใช้
callbackUrl URL เรียกกลับของแอป โดยปกติจะใช้สำหรับ OAuth เท่านั้น
DisplayName ชื่อที่แสดงของแอป
status สถานะของแอป เช่น "อนุมัติแล้ว" หรือ "เพิกถอนแล้ว"
apiproducts อาร์เรย์ที่มีรายการผลิตภัณฑ์ API ที่เชื่อมโยงกับแอป
appFamily กลุ่มแอปที่มีแอปดังกล่าวหรือ "ค่าเริ่มต้น"
appParentStatus สถานะของแอปหลัก เช่น "ใช้งานอยู่" หรือ "ไม่มีการใช้งาน"
appType ประเภทแอปเป็น "บริษัท" หรือ "นักพัฒนาแอป"
appParentId รหัสของแอปหลัก
created_at การประทับวันที่/เวลาเมื่อสร้างแอป
created_by อีเมลของนักพัฒนาแอปที่สร้างแอป
last_modified_at การประทับวันที่/เวลาที่อัปเดตแอปครั้งล่าสุด
last_modified_by อีเมลของนักพัฒนาแอปที่อัปเดตแอปครั้งล่าสุด
{app_custom_attributes} แอตทริบิวต์แอปที่กำหนดเอง ระบุชื่อของแอตทริบิวต์ที่กำหนดเอง

ตัวแปรโฟลว์ของนักพัฒนาซอฟต์แวร์

ตัวแปรโฟลว์ต่อไปนี้ซึ่งมีข้อมูลเกี่ยวกับนักพัฒนาแอปจะได้รับการป้อนข้อมูลโดยนโยบาย ตัวแปรเหล่านี้ทั้งหมดมีคำนำหน้าดังนี้

verifyapikey.{policy_name}.developer

เช่น

verifyapikey.{policy_name}.developer.id

ตัวแปรที่ใช้ได้มีดังนี้

ตัวแปร คำอธิบาย
id แสดงผล {org_name}@@@{developer_id}
userName ชื่อผู้ใช้ของนักพัฒนาแอป
firstName ชื่อของนักพัฒนาแอป
lastName นามสกุลของนักพัฒนาแอป
email อีเมลของนักพัฒนาแอป
status สถานะของนักพัฒนาแอปเป็น active, inactive หรือ login_lock
apps อาร์เรย์ของแอปที่เชื่อมโยงกับนักพัฒนาแอป
created_at การประทับวันที่/เวลาเมื่อสร้างนักพัฒนาแอป
created_by อีเมลของผู้ใช้ที่สร้างนักพัฒนาแอป
last_modified_at การประทับวันที่/เวลาที่มีการแก้ไขนักพัฒนาแอปครั้งล่าสุด
last_modified_by อีเมลของผู้ใช้ที่แก้ไขนักพัฒนาแอป
{developer_custom_attributes} แอตทริบิวต์นักพัฒนาแอปที่กำหนดเอง ระบุชื่อของแอตทริบิวต์ที่กำหนดเอง
Company ชื่อบริษัท (หากมี) ที่เชื่อมโยงกับนักพัฒนาแอป

ตัวแปรโฟลว์ของบริษัท

ตัวแปรโฟลว์ต่อไปนี้ซึ่งมีข้อมูลเกี่ยวกับบริษัทจะได้รับการป้อนข้อมูลโดยนโยบาย ตัวแปรเหล่านี้ทั้งหมดมีคำนำหน้าดังนี้

verifyapikey.{policy_name}.company

เช่น

verifyapikey.{policy_name}.company.name

ตัวแปรที่ใช้ได้มีดังนี้

ตัวแปร คำอธิบาย
name ชื่อบริษัท
displayName ชื่อที่แสดงของบริษัท
id

รหัสบริษัท

apps อาร์เรย์ที่มีรายการแอปของบริษัท
appOwnerStatus
สถานะของเจ้าของแอปเป็น active, inactive หรือ login_lock
created_at การประทับวันที่/เวลาที่สร้างบริษัท
created_by อีเมลของผู้ใช้ที่สร้างบริษัท
last_modified_at การประทับวันที่/เวลาที่มีการแก้ไขบริษัทครั้งล่าสุด
last_modified_by อีเมลของผู้ใช้ที่แก้ไขบริษัทล่าสุด
{company_custom_attributes} แอตทริบิวต์บริษัทที่กำหนดเอง ระบุชื่อของแอตทริบิวต์ที่กำหนดเอง

ตัวแปร Analytics

ระบบจะป้อนค่าตัวแปรต่อไปนี้ใน Analytics โดยอัตโนมัติเมื่อมีการบังคับใช้นโยบายยืนยันคีย์ API สำหรับคีย์ API ที่ถูกต้อง ตัวแปรเหล่านี้จะสร้างขึ้นโดยนโยบาย "ยืนยันคีย์ API" และนโยบาย OAuth เท่านั้น

คุณสามารถใช้ตัวแปรและค่าเป็นมิติข้อมูลเพื่อสร้างรายงาน Analytics เพื่อให้ทราบ รูปแบบการใช้งานของนักพัฒนาแอปและแอป

  • apiproduct.name
  • developer.app.name
  • client_id
  • developer.id

ข้อมูลอ้างอิงข้อผิดพลาด

ส่วนนี้อธิบายรหัสข้อผิดพลาดและข้อความแสดงข้อผิดพลาดที่ระบบแสดง รวมถึงตัวแปรข้อผิดพลาดที่ Edge ตั้งค่าเมื่อนโยบายนี้ทริกเกอร์ข้อผิดพลาด คุณควรทราบข้อมูลนี้หากกำลังพัฒนากฎข้อผิดพลาดเพื่อจัดการข้อผิดพลาด ดูข้อมูลเพิ่มเติมได้ที่สิ่งที่คุณต้องรู้ เกี่ยวกับข้อผิดพลาดด้านนโยบายและการจัดการ ข้อบกพร่อง

ข้อผิดพลาดเกี่ยวกับรันไทม์

ข้อผิดพลาดเหล่านี้อาจเกิดขึ้นเมื่อมีการดำเนินการตามนโยบาย

รหัสข้อบกพร่อง สถานะ HTTP สาเหตุ
keymanagement.service.CompanyStatusNotActive 401 บริษัทที่เชื่อมโยงกับแอปของนักพัฒนาแอปที่มีคีย์ API ที่คุณใช้มีสถานะ ไม่ใช้งาน เมื่อตั้งค่าสถานะของบริษัทเป็น "ไม่มีการใช้งาน" คุณจะเข้าถึง นักพัฒนาแอปหรือแอปที่เชื่อมโยงกับบริษัทนั้นไม่ได้ ผู้ดูแลระบบขององค์กรสามารถเปลี่ยนสถานะของบริษัท ได้โดยใช้ Management API ดูตั้งค่าสถานะ ของบริษัท
keymanagement.service.DeveloperStatusNotActive 401

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

keymanagement.service.invalid_client-app_not_approved 401 ระบบจะเพิกถอนแอปของนักพัฒนาซอฟต์แวร์ที่เชื่อมโยงกับคีย์ API แอปที่ถูกเพิกถอนจะ เข้าถึงผลิตภัณฑ์ API ใดๆ ไม่ได้ และเรียกใช้ API ที่จัดการโดย Apigee Edge ไม่ได้ ผู้ดูแลระบบขององค์กรสามารถ เปลี่ยนสถานะของแอปนักพัฒนาซอฟต์แวร์ได้โดยใช้ Management API ดู อนุมัติหรือเพิกถอนแอปนักพัฒนาซอฟต์แวร์
oauth.v2.FailedToResolveAPIKey 401 นโยบายคาดว่าจะพบคีย์ API ในตัวแปรที่ระบุไว้ในองค์ประกอบ <APIKey> ของนโยบาย ข้อผิดพลาดนี้เกิดขึ้นเมื่อตัวแปรที่คาดไว้ไม่มีอยู่ (ไม่สามารถแก้ไขได้)
oauth.v2.InvalidApiKey 401 Edge ได้รับคีย์ API แต่คีย์ดังกล่าวไม่ถูกต้อง เมื่อ Edge ค้นหาคีย์ในฐานข้อมูล จะต้องตรงกับคีย์ที่ส่งในคำขอทุกประการ หาก API เคยทำงานได้ ก่อนหน้านี้ โปรดตรวจสอบว่าไม่ได้สร้างคีย์ใหม่ หากมีการสร้างคีย์ใหม่ คุณจะเห็นข้อผิดพลาดนี้หากพยายามใช้คีย์เก่า โปรดดูรายละเอียดที่หัวข้อลงทะเบียนแอปและจัดการคีย์ API
oauth.v2.InvalidApiKeyForGivenResource 401 Edge ได้รับคีย์ API และคีย์นั้นถูกต้อง แต่ไม่ตรงกับคีย์ที่ได้รับอนุมัติในแอปสำหรับนักพัฒนาซอฟต์แวร์ที่เชื่อมโยงกับพร็อกซี API ผ่านผลิตภัณฑ์

ข้อผิดพลาดในการติดตั้งใช้งาน

ข้อผิดพลาดเหล่านี้อาจเกิดขึ้นเมื่อคุณติดตั้งใช้งานพร็อกซีที่มีนโยบายนี้

ชื่อข้อผิดพลาด สาเหตุ
SpecifyValueOrRefApiKey องค์ประกอบ <APIKey> ไม่ได้ระบุค่าหรือคีย์

ตัวแปรข้อผิดพลาด

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

ตัวแปร สถานที่ ตัวอย่าง
fault.name="fault_name" fault_name คือชื่อของข้อผิดพลาดตามที่แสดงในตารางข้อผิดพลาดรันไทม์ด้านบน ชื่อข้อบกพร่องคือส่วนสุดท้ายของรหัสข้อบกพร่อง fault.name Matches "FailedToResolveAPIKey"
oauthV2.policy_name.failed policy_name คือชื่อที่ผู้ใช้ระบุของนโยบายที่ทำให้เกิดข้อผิดพลาด oauthV2.VK-VerifyAPIKey.failed = true

ตัวอย่างการตอบกลับข้อผิดพลาด

{
   "fault":{
      "faultstring":"Invalid ApiKey",
      "detail":{
         "errorcode":"oauth.v2.InvalidApiKey"
      }
   }
}
{
   "fault":{
      "detail":{
         "errorcode":"keymanagement.service.DeveloperStatusNotActive"
      },
      "faultstring":"Developer Status is not Active"
   }
}

ตัวอย่างกฎข้อบกพร่อง

<FaultRule name="FailedToResolveAPIKey">
    <Step>
        <Name>AM-FailedToResolveAPIKey</Name>
    </Step>
    <Condition>(fault.name Matches "FailedToResolveAPIKey") </Condition>
</FaultRule>

หัวข้อที่เกี่ยวข้อง