Halaman ini berlaku untuk Apigee dan Apigee hybrid.
Lihat dokumentasi Apigee Edge.
Kebijakan AccessControl
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
accesscontrol.IPDeniedAccess |
403 |
Alamat IP klien, atau alamat IP yang diteruskan
dalam permintaan API, cocok dengan alamat IP yang ditentukan dalam elemen <SourceAddress> dalam
elemen <MatchRule> Kebijakan Kontrol Akses, dan atribut action dari
elemen <MatchRule> ditetapkan ke DENY . |
build |
accesscontrol.InvalidIPAddressInVariable |
500 |
Variabel flow di <ClientIPVariable> berisi alamat IP yang tidak valid. |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk informasi selengkapnya, lihat Variabel khusus untuk error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "IPDeniedAccess" |
acl.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | acl.AC-AllowAccess.failed = true |
Contoh respons error
{ "fault":{ "faultstring":"Access Denied for client ip : 52.211.243.3" "detail":{ "errorcode":"steps.accesscontrol.IPDeniedAccess" } } }
Contoh aturan error
<FaultRule name="IPDeniedAccess"> <Step> <Name>AM-IPDeniedAccess</Name> <Condition>(fault.name Matches "IPDeniedAccess") </Condition> </Step> <Condition>(acl.failed = true) </Condition> </FaultRule>
Kebijakan AccessEntity
Untuk informasi terkait, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Tidak ada.
Error saat deployment
Nama error | String error | Status HTTP | Terjadi saat |
---|---|---|---|
InvalidEntityType |
Invalid type [entity_type] in ACCESSENTITYStepDefinition
[policy_name] |
T/A | Jenis entitas yang digunakan harus berupa salah satu jenis yang didukung. |
Kebijakan AssignMessage
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.assignmessage.SetVariableFailed |
500 |
Kebijakan tidak dapat menetapkan variabel. Lihat string error untuk nama variabel yang belum terselesaikan. | |
steps.assignmessage.VariableOfNonMsgType |
500 |
Error ini terjadi jika atribut Variabel jenis pesan mewakili seluruh permintaan dan respons HTTP. Variabel alur Apigee bawaan |
build |
steps.assignmessage.UnresolvedVariable |
500 |
Error ini terjadi jika variabel yang ditentukan dalam kebijakan AssignMessage adalah:
|
build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidIndex |
Jika indeks yang ditentukan dalam elemen <Copy> dan/atau <Remove> dari kebijakan AssignMessage adalah 0 atau angka negatif, deployment Proxy API akan gagal.
|
build |
InvalidVariableName |
Jika elemen turunan <Name> kosong atau tidak ditentukan dalam elemen <AssignVariable> , deployment proxy API akan gagal karena tidak ada nama variabel yang valid untuk menetapkan nilai. Nama variabel yang valid wajib diisi.
|
build |
InvalidPayload |
Payload yang ditentukan dalam kebijakan tidak valid. |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime. Untuk informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="FAULT_NAME" |
FAULT_NAME adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "UnresolvedVariable" |
assignmessage.POLICY_NAME.failed |
POLICY_NAME adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | assignmessage.AM-SetResponse.failed = true |
Contoh respons error
{ "fault":{ "detail":{ "errorcode":"steps.assignmessage.VariableOfNonMsgType" }, "faultstring":"AssignMessage[AM-SetResponse]: value of variable is not of type Message" } }
Contoh aturan error
<FaultRule name="Assign Message Faults"> <Step> <Name>AM-CustomNonMessageTypeErrorResponse</Name> <Condition>(fault.name Matches "VariableOfNonMsgType") </Condition> </Step> <Step> <Name>AM-CustomSetVariableErrorResponse</Name> <Condition>(fault.name = "SetVariableFailed")</Condition> </Step> <Condition>(assignmessage.failed = true) </Condition> </FaultRule>
Kebijakan BasicAuthentication
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.basicauthentication.InvalidBasicAuthenticationSource |
500 |
Pada decoding saat string yang dienkode Base64 yang masuk tidak berisi nilai yang valid atau header salah format (misalnya, tidak dimulai dengan Basic ). |
build |
steps.basicauthentication.UnresolvedVariable |
500 |
Variabel sumber yang diperlukan untuk dekode atau encode tidak ada. Error ini hanya dapat terjadi jika IgnoreUnresolvedVariables salah. |
build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Terjadi saat | Perbaiki |
---|---|---|
UserNameRequired |
Elemen <User> harus ada untuk operasi yang dinamai. |
build |
PasswordRequired |
Elemen <Password> harus ada untuk operasi yang dinamai. |
build |
AssignToRequired |
Elemen <AssignTo> harus ada untuk operasi yang dinamai. |
build |
SourceRequired |
Elemen <Source> harus ada untuk operasi yang dinamai. |
build |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "UnresolvedVariable" |
BasicAuthentication.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | BasicAuthentication.BA-Authenticate.failed = true |
Contoh respons error
{ "fault":{ "detail":{ "errorcode":"steps.basicauthentication.UnresolvedVariable" }, "faultstring":"Unresolved variable : request.queryparam.password" } }
Contoh aturan error
<FaultRule name="Basic Authentication Faults"> <Step> <Name>AM-UnresolvedVariable</Name> <Condition>(fault.name Matches "UnresolvedVariable") </Condition> </Step> <Step> <Name>AM-AuthFailedResponse</Name> <Condition>(fault.name = "InvalidBasicAuthenticationSource")</Condition> </Step> <Condition>(BasicAuthentication.BA-Authentication.failed = true) </Condition> </FaultRule>
Kebijakan DecodeJWS
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Terjadi saat |
---|---|---|
steps.jws.FailedToDecode |
401 |
Kebijakan tidak dapat mendekode JWS. JWS mungkin rusak. |
steps.jws.FailedToResolveVariable |
401 |
Terjadi saat variabel alur yang ditentukan dalam elemen <Source>
kebijakan tidak ada. |
steps.jws.InvalidClaim |
401 |
Untuk klaim yang tidak ada atau ketidakcocokan klaim, atau header yang tidak ada atau ketidakcocokan header. |
steps.jws.InvalidJsonFormat |
401 |
JSON tidak valid ditemukan di header JWS. |
steps.jws.InvalidJws |
401 |
Error ini terjadi saat verifikasi tanda tangan JWS gagal. |
steps.jws.InvalidPayload |
401 |
Payload JWS tidak valid. |
steps.jws.InvalidSignature |
401 |
<DetachedContent> dihilangkan dan JWS memiliki payload konten yang terpisah. |
steps.jws.MissingPayload |
401 |
Payload JWS tidak ada. |
steps.jws.NoAlgorithmFoundInHeader |
401 |
Terjadi saat JWS menghilangkan header algoritma. |
steps.jws.UnknownException |
401 |
Terjadi pengecualian yang tidak diketahui. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Terjadi saat |
---|---|
InvalidAlgorithm |
Satu-satunya nilai yang valid adalah: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512,
HS256, HS384, HS512 . |
|
Kemungkinan error deployment lainnya. |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "TokenExpired" |
JWS.failed |
Semua kebijakan JWS menetapkan variabel yang sama jika terjadi kegagalan. | jws.JWS-Policy.failed = true |
Contoh respons error
Untuk penanganan error, praktik terbaiknya adalah menangkap bagian errorcode
dari respons error. Jangan mengandalkan teks di faultstring
, karena teks tersebut dapat berubah.
Contoh aturan error
<FaultRules> <FaultRule name="JWS Policy Errors"> <Step> <Name>JavaScript-1</Name> <Condition>(fault.name Matches "TokenExpired")</Condition> </Step> <Condition>JWS.failed=true</Condition> </FaultRule> </FaultRules>
Kebijakan DecodeJWT
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.jwt.FailedToDecode |
401 |
Terjadi saat kebijakan tidak dapat mendekode JWT. JWT mungkin salah format, tidak valid, atau tidak dapat didekode. | build |
steps.jwt.FailedToResolveVariable |
401 |
Terjadi saat variabel alur yang ditentukan dalam elemen <Source>
kebijakan tidak ada. |
|
steps.jwt.InvalidToken |
401 |
Terjadi saat variabel alur yang ditentukan dalam elemen <Source>
kebijakan berada di luar cakupan atau tidak dapat di-resolve. |
build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidEmptyElement |
Terjadi saat variabel alur yang berisi JWT yang akan didekode tidak ditentukan dalam elemen <Source> kebijakan.
|
build |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "InvalidToken" |
JWT.failed |
Semua kebijakan JWT menetapkan variabel yang sama jika terjadi kegagalan. | JWT.failed = true |
Contoh respons error
Untuk penanganan error, praktik terbaiknya adalah menangkap bagian errorcode
dari respons error. Jangan mengandalkan teks di faultstring
, karena teks tersebut dapat berubah.
Contoh aturan error
<FaultRules> <FaultRule name="JWT Policy Errors"> <Step> <Name>JavaScript-1</Name> <Condition>(fault.name Matches "InvalidToken")</Condition> </Step> <Condition>JWT.failed=true</Condition> </FaultRule> </FaultRules>
Kebijakan ExtractVariables
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.extractvariables.ExecutionFailed |
500 |
Error ini terjadi jika:
|
build |
steps.extractvariables.ImmutableVariable |
500 |
Variabel yang digunakan dalam kebijakan tidak dapat diubah. Kebijakan tidak dapat menetapkan variabel ini. | T/A |
steps.extractvariables.InvalidJSONPath |
500 |
Error ini terjadi jika jalur JSON yang tidak valid digunakan dalam elemen JSONPath kebijakan. Misalnya, jika payload JSON tidak memiliki objek Name , tetapi Anda menentukan Name sebagai jalur dalam kebijakan, error ini akan terjadi. |
build |
steps.extractvariables.JsonPathParsingFailure |
500 |
Error ini terjadi saat kebijakan tidak dapat mengurai jalur JSON dan
mengekstrak data dari variabel alur yang ditentukan dalam elemen Source . Biasanya hal ini
terjadi jika variabel alur yang ditentukan dalam elemen Source tidak ada dalam alur
saat ini. |
build |
steps.extractvariables.SetVariableFailed |
500 |
Error ini terjadi jika kebijakan tidak dapat menetapkan nilai ke variabel. Error ini biasanya terjadi jika Anda mencoba menetapkan nilai ke beberapa variabel yang namanya dimulai dengan kata yang sama dalam format bertingkat yang dipisahkan titik. | build |
steps.extractvariables.SourceMessageNotAvailable |
500 |
Error ini terjadi jika variabel message
yang ditentukan dalam elemen Source kebijakan
adalah:
|
build |
steps.extractvariables.UnableToCast |
500 |
Error ini terjadi jika kebijakan tidak dapat mentransmisikan nilai yang diekstrak ke variabel. Biasanya hal ini terjadi jika Anda mencoba menetapkan nilai satu jenis data ke variabel jenis data lain. | build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
NothingToExtract |
Jika kebijakan tidak memiliki elemen URIPath , QueryParam ,
Header , FormParam , XMLPayload , atau JSONPayload ,
deployment API Proxy akan gagal, karena tidak ada yang akan diekstrak. |
build |
NONEmptyPrefixMappedToEmptyURI |
Error ini terjadi jika kebijakan memiliki awalan yang ditentukan dalam elemen Namespace di bawah elemen XMLPayload , tetapi tidak ada URI yang ditentukan. |
build |
DuplicatePrefix |
Error ini terjadi jika kebijakan memiliki awalan yang sama yang ditentukan lebih dari
sekali di elemen Namespace pada elemen XMLPayload . |
build |
NoXPathsToEvaluate |
Jika kebijakan tidak memiliki elemen XPath dalam elemen XMLPayload , deployment proxy API akan gagal dengan error ini.
|
build |
EmptyXPathExpression |
Jika kebijakan memiliki ekspresi XPath kosong dalam elemen XMLPayload , deployment proxy API akan gagal. |
build |
NoJSONPathsToEvaluate |
Jika kebijakan tidak memiliki elemen JSONPath dalam elemen JSONPayload , deployment proxy API akan gagal dengan error ini. |
build |
EmptyJSONPathExpression |
Jika kebijakan memiliki ekspresi XPath kosong dalam elemen XMLPayload , deployment proxy API akan gagal. |
build |
MissingName |
Jika kebijakan tidak memiliki atribut name di salah satu elemen kebijakan seperti QueryParam , Header , FormParam , atau Variable , yang diperlukan, deployment proxy API akan gagal. |
build |
PatternWithoutVariable |
Jika kebijakan tidak memiliki variabel yang ditentukan dalam elemen Pattern , deployment proxy API akan gagal. Elemen Pattern memerlukan nama variabel tempat data yang diekstrak akan disimpan. |
build |
CannotBeConvertedToNodeset |
Jika kebijakan memiliki ekspresi XPath dengan jenis Variable
ditentukan sebagai nodeset,
tetapi ekspresi tidak dapat dikonversi menjadi nodeset, deployment proxy API akan gagal. |
build |
JSONPathCompilationFailed |
Kebijakan tidak dapat mengompilasi Jalur JSON yang ditentukan. | T/A |
InstantiationFailed |
Kebijakan tidak dapat dibuat instance-nya. | T/A |
XPathCompilationFailed |
Jika awalan atau nilai yang digunakan dalam elemen XPath bukan bagian dari salah satu
namespace yang dideklarasikan dalam kebijakan, deployment proxy API
akan gagal. |
build |
InvalidPattern |
Jika definisi elemen Pattern tidak valid di salah satu elemen seperti URIPath ,
QueryParam , Header , FormParam , XMLPayload ,
atau JSONPayload dalam kebijakan, deployment proxy
API akan gagal.
|
build |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime. Untuk informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name = "SourceMessageNotAvailable" |
extractvariables.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | extractvariables.EV-ParseJsonResponse.failed = true |
Contoh respons error
{ "fault":{ "detail":{ "errorcode":"steps.extractvariables.SourceMessageNotAvailable" }, "faultstring":"request message is not available for ExtractVariable: EV-ParseJsonResponse" } }
Contoh aturan error
<FaultRule name="Extract Variable Faults"> <Step> <Name>AM-CustomErrorMessage</Name> <Condition>(fault.name = "SourceMessageNotAvailable") </Condition> </Step> <Condition>(extractvariables.EM-ParseJsonResponse.failed = true) </Condition> </FaultRule>
Kebijakan GenerateJWS
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Terjadi saat |
---|---|---|
steps.jws.GenerationFailed |
401 |
Kebijakan tidak dapat membuat JWS. |
steps.jws.InsufficientKeyLength |
401 |
Untuk kunci kurang dari 32 byte untuk algoritma HS256 |
steps.jws.InvalidClaim |
401 |
Untuk klaim yang tidak ada atau ketidakcocokan klaim, atau header yang tidak ada atau ketidakcocokan header. |
steps.jws.InvalidCurve |
401 |
Kurva yang ditentukan oleh kunci tidak valid untuk algoritma Elliptic Curve. |
steps.jws.InvalidJsonFormat |
401 |
JSON tidak valid ditemukan di header JWS. |
steps.jws.InvalidPayload |
401 |
Payload JWS tidak valid. |
steps.jws.InvalidSignature |
401 |
<DetachedContent> dihilangkan dan JWS memiliki payload konten yang terpisah. |
steps.jws.KeyIdMissing |
401 |
Kebijakan Verifikasi menggunakan JWKS sebagai sumber kunci publik, tetapi JWS yang ditandatangani tidak
menyertakan properti kid di header. |
steps.jws.KeyParsingFailed |
401 |
Kunci publik tidak dapat diuraikan dari informasi kunci yang diberikan. |
steps.jws.MissingPayload |
401 |
Payload JWS tidak ada. |
steps.jws.NoAlgorithmFoundInHeader |
401 |
Terjadi saat JWS menghilangkan header algoritma. |
steps.jws.SigningFailed |
401 |
Di GenerateJWS, untuk kunci yang kurang dari ukuran minimum untuk algoritma HS384 atau HS512 |
steps.jws.UnknownException |
401 |
Terjadi pengecualian yang tidak diketahui. |
steps.jws.WrongKeyType |
401 |
Jenis kunci yang ditentukan salah. Misalnya, jika Anda menentukan kunci RSA untuk algoritma Elliptic Curve, atau kunci kurva untuk algoritma RSA. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Terjadi saat |
---|---|
InvalidAlgorithm |
Satu-satunya nilai yang valid adalah: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512,
HS256, HS384, HS512 . |
|
Kemungkinan error deployment lainnya. |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "TokenExpired" |
JWS.failed |
Semua kebijakan JWS menetapkan variabel yang sama jika terjadi kegagalan. | jws.JWS-Policy.failed = true |
Contoh respons error
Untuk penanganan error, praktik terbaiknya adalah menangkap bagian errorcode
dari respons error. Jangan mengandalkan teks di faultstring
, karena teks tersebut dapat berubah.
Contoh aturan error
<FaultRules> <FaultRule name="JWS Policy Errors"> <Step> <Name>JavaScript-1</Name> <Condition>(fault.name Matches "TokenExpired")</Condition> </Step> <Condition>JWS.failed=true</Condition> </FaultRule> </FaultRules>
Kebijakan GenerateJWT
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Terjadi saat |
---|---|---|
steps.jwt.AlgorithmInTokenNotPresentInConfiguration |
401 |
Terjadi saat kebijakan verifikasi memiliki beberapa algoritma. |
steps.jwt.AlgorithmMismatch |
401 |
Algoritma yang ditentukan dalam kebijakan Buat tidak cocok dengan algoritma yang diharapkan dalam kebijakan Verifikasi. Algoritma yang ditentukan harus cocok. |
steps.jwt.EncryptionFailed |
401 |
Pembuatan JWT terenkripsi gagal karena alasan yang tidak spesifik |
steps.jwt.FailedToDecode |
401 |
Kebijakan tidak dapat mendekode JWT. JWT mungkin rusak. |
steps.jwt.GenerationFailed |
401 |
Kebijakan tidak dapat membuat JWT. |
steps.jwt.InsufficientKeyLength |
401 |
Untuk kunci kurang dari 32 byte untuk algoritma HS256, kurang dari 48 byte untuk algoritma HS386, dan kurang dari 64 byte untuk algoritma HS512. |
steps.jwt.InvalidClaim |
401 |
Untuk klaim yang tidak ada atau ketidakcocokan klaim, atau header yang tidak ada atau ketidakcocokan header. |
steps.jwt.InvalidConfiguration |
401 |
Elemen <Algorithm> dan <Algorithms>
ada. |
steps.jwt.InvalidCurve |
401 |
Kurva yang ditentukan oleh kunci tidak valid untuk algoritma Elliptic Curve. |
steps.jwt.InvalidJsonFormat |
401 |
JSON tidak valid ditemukan di header atau payload. |
steps.jwt.InvalidPasswordKey |
401 |
Kunci yang ditentukan tidak memenuhi persyaratan. |
steps.jwt.InvalidPrivateKey |
401 |
Kunci yang ditentukan tidak memenuhi persyaratan. |
steps.jwt.InvalidPublicKey |
401 |
Kunci yang ditentukan tidak memenuhi persyaratan. |
steps.jwt.InvalidSecretKey |
401 |
Kunci yang ditentukan tidak memenuhi persyaratan. |
steps.jwt.InvalidToken |
401 |
Error ini terjadi saat verifikasi tanda tangan JWT gagal. |
steps.jwt.JwtAudienceMismatch |
401 |
Klaim audiens gagal dalam verifikasi token. |
steps.jwt.JwtIssuerMismatch |
401 |
Klaim penerbit gagal dalam verifikasi token. |
steps.jwt.JwtSubjectMismatch |
401 |
Klaim subjek gagal dalam verifikasi token. |
steps.jwt.KeyIdMissing |
401 |
Kebijakan Verifikasi menggunakan JWKS sebagai sumber untuk kunci publik, tetapi JWT yang ditandatangani tidak
menyertakan properti kid di header. |
steps.jwt.KeyParsingFailed |
401 |
Kunci publik tidak dapat diuraikan dari informasi kunci yang diberikan. |
steps.jwt.NoAlgorithmFoundInHeader |
401 |
Terjadi saat JWT tidak berisi header algoritma. |
steps.jwt.NoMatchingPublicKey |
401 |
Kebijakan Verifikasi menggunakan JWKS sebagai sumber untuk kunci publik, tetapi kid
dalam JWT yang ditandatangani tidak tercantum dalam JWKS. |
steps.jwt.SigningFailed |
401 |
Di GenerateJWT , untuk kunci yang kurang dari ukuran minimum untuk algoritma HS384 atau HS512 |
steps.jwt.TokenExpired |
401 |
Kebijakan ini mencoba memverifikasi token yang sudah tidak berlaku. |
steps.jwt.TokenNotYetValid |
401 |
Token belum valid. |
steps.jwt.UnhandledCriticalHeader |
401 |
Header yang ditemukan oleh kebijakan Verifikasi JWT di header crit tidak
tercantum dalam KnownHeaders . |
steps.jwt.UnknownException |
401 |
Terjadi pengecualian yang tidak diketahui. |
steps.jwt.WrongKeyType |
401 |
Jenis kunci yang ditentukan salah. Misalnya, jika Anda menentukan kunci RSA untuk algoritma Elliptic Curve, atau kunci kurva untuk algoritma RSA. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidNameForAdditionalClaim |
Deployment akan gagal jika klaim yang digunakan di elemen turunan <Claim>
dari elemen <AdditionalClaims> adalah salah satu nama terdaftar berikut:
kid , iss , sub , aud , iat ,
exp , nbf , atau jti .
|
build |
InvalidTypeForAdditionalClaim |
Jika klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims> bukan dari jenis string , number ,
boolean , atau map , deployment akan gagal.
|
build |
MissingNameForAdditionalClaim |
Jika nama klaim tidak ditentukan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims> , deployment akan gagal.
|
build |
InvalidNameForAdditionalHeader |
Error ini terjadi saat nama klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims> adalah alg atau typ .
|
build |
InvalidTypeForAdditionalHeader |
Jika jenis klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims> bukan dari jenis string , number ,
boolean , atau map , deployment akan gagal.
|
build |
InvalidValueOfArrayAttribute |
Error ini terjadi jika nilai atribut array di elemen turunan <Claim>
dari elemen <AdditionalClaims> tidak ditetapkan ke true atau false .
|
build |
InvalidConfigurationForActionAndAlgorithm |
Jika elemen <PrivateKey> digunakan dengan algoritma Keluarga HS atau
elemen <SecretKey> digunakan dengan algoritma Keluarga RSA, deployment
akan gagal.
|
build |
InvalidValueForElement |
Jika nilai yang ditentukan dalam elemen <Algorithm> bukan nilai yang didukung, deployment akan gagal.
|
build |
MissingConfigurationElement |
Error ini akan terjadi jika elemen <PrivateKey> tidak digunakan dengan algoritma keluarga RSA atau elemen <SecretKey> tidak digunakan dengan algoritma Keluarga
HS.
|
build |
InvalidKeyConfiguration |
Jika elemen turunan <Value> tidak ditentukan dalam elemen <PrivateKey>
atau <SecretKey> , deployment akan gagal.
|
build |
EmptyElementForKeyConfiguration |
Jika atribut ref dari elemen turunan <Value> dari elemen <PrivateKey>
atau <SecretKey> kosong atau tidak ditentukan, deployment akan gagal.
|
build |
InvalidVariableNameForSecret |
Error ini terjadi jika nama variabel flow yang ditentukan dalam atribut ref elemen
turunan <Value> dari elemen <PrivateKey>
atau <SecretKey> tidak berisi awalan pribadi (private.) .
|
build |
InvalidSecretInConfig |
Error ini terjadi jika elemen turunan <Value> dari elemen <PrivateKey>
atau <SecretKey> tidak berisi awalan pribadi (private.) .
|
build |
InvalidTimeFormat |
Jika nilai yang ditentukan dalam elemen <NotBefore> tidak menggunakan format yang didukung, deployment akan gagal.
|
build |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "InvalidToken" |
JWT.failed |
Semua kebijakan JWT menetapkan variabel yang sama jika terjadi kegagalan. | JWT.failed = true |
Contoh respons error
Untuk penanganan error, praktik terbaiknya adalah menangkap bagian errorcode
dari respons error. Jangan mengandalkan teks di faultstring
, karena teks tersebut dapat berubah.
Contoh aturan error
<FaultRules> <FaultRule name="JWT Policy Errors"> <Step> <Name>JavaScript-1</Name> <Condition>(fault.name Matches "InvalidToken")</Condition> </Step> <Condition>JWT.failed=true</Condition> </FaultRule> </FaultRules>
Kebijakan JavaCallout
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.javacallout.ExecutionError |
500 |
Terjadi saat kode Java menampilkan pengecualian atau menampilkan null selama eksekusi JavaCallout policy . |
build |
Error saat deployment
Error ini dapat terjadi saat proxy yang berisi kebijakan di-deploy.
Nama error | String error | Status HTTP | Terjadi saat |
---|---|---|---|
ResourceDoesNotExist |
Resource with name
[name] and type [type] does not exist |
T/A | File yang ditentukan dalam elemen <ResourceURL> tidak ada. |
JavaCalloutInstantiationFailed |
Failed to instantiate the JavaCallout Class [classname] |
T/A | File class yang ditentukan dalam elemen <ClassName> tidak ada dalam
jar. |
IncompatibleJavaVersion |
Failed to load java class [classname] definition due to - [reason] |
T/A | Lihat string error. Versi Java yang didukung meliputi: Oracle JDK 7/8 dan OpenJDK 7/8 |
JavaClassNotFoundInJavaResource |
Failed to find the ClassName in java resource [jar_name] -
[class_name] |
T/A | Lihat string error. |
JavaClassDefinitionNotFound |
Failed to load java class [class_name] definition due to - [reason] |
T/A | Lihat string error. |
NoAppropriateConstructor |
No appropriate constructor found in JavaCallout class [class_name] |
T/A | Lihat string error. |
NoResourceForURL |
Could not locate a resource with URL [string] |
T/A | Lihat string error. |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "ExecutionError" |
javacallout.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | javacallout.JC-GetUserData.failed = true |
Contoh respons error
{ "fault":{ "faultstring":"Failed to execute JavaCallout. [policy_name]", "detail":{ "errorcode":"javacallout.ExecutionError" } } }
Contoh aturan error
<FaultRule name="JavaCalloutFailed"> <Step> <Name>AM-JavaCalloutError</Name> </Step> <Condition>(fault.name Matches "ExecutionError") </Condition> </FaultRule>
Kebijakan JavaScript
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.javascript.ScriptExecutionFailed |
500 |
Kebijakan JavaScript dapat menampilkan berbagai jenis error ScriptExecutionFailed . Jenis error yang biasa
dilihat meliputi
RangeError,
ReferenceError,
SyntaxError,
TypeError, dan
URIError. |
build |
steps.javascript.ScriptExecutionFailedLineNumber |
500 |
Terjadi error pada kode JavaScript . Lihat string error untuk mengetahui detailnya. |
T/A |
steps.javascript.ScriptSecurityError |
500 |
Terjadi error keamanan saat JavaScript dieksekusi. Lihat string error untuk mengetahui detailnya. |
T/A |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidResourceUrlFormat |
Jika format URL resource yang ditentukan dalam elemen <ResourceURL> atau <IncludeURL> kebijakan JavaScript tidak valid, deployment proxy API akan gagal. |
build |
InvalidResourceUrlReference |
Jika elemen <ResourceURL> atau <IncludeURL>
merujuk ke file JavaScript yang tidak ada, deployment proxy API akan gagal.
File sumber yang dirujuk harus ada di tingkat proxy, lingkungan, atau organisasi API. |
build |
WrongResourceType |
Error ini terjadi selama deployment jika elemen <ResourceURL> atau <IncludeURL> dari kebijakan JavaScript merujuk ke jenis resource selain jsc (file JavaScript ). |
build |
NoResourceURLOrSource |
Deployment kebijakan JavaScript dapat gagal dengan error ini jika elemen <ResourceURL> tidak dideklarasikan atau jika URL resource tidak ditentukan dalam elemen ini.
Elemen <ResourceURL> adalah elemen wajib. Atau, Elemen <IncludeURL> dideklarasikan,
tetapi URL resource tidak ditentukan dalam elemen ini. Elemen <IncludeURL> bersifat opsional,
tetapi jika dideklarasikan, URL resource harus ditentukan dalam elemen <IncludeURL> . |
build |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime. Untuk informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "ScriptExecutionFailed" |
javascript.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | javascript.JavaScript-1.failed = true |
Contoh respons error
{ "fault": { "faultstring": "Execution of SetResponse failed with error: Javascript runtime error: "ReferenceError: "status" is not defined. (setresponse.js:6)\"", "detail": { "errorcode": "steps.javascript.ScriptExecutionFailed" } } }
Contoh aturan error
<FaultRule name="JavaScript Policy Faults"> <Step> <Name>AM-CustomErrorResponse</Name> <Condition>(fault.name Matches "ScriptExecutionFailed") </Condition> </Step> <Condition>(javascript.JavaScript-1.failed = true) </Condition> </FaultRule>
Kebijakan JSONThreatProtection
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.jsonthreatprotection.ExecutionFailed |
500 |
Kebijakan JSONThreatProtection dapat menampilkan berbagai jenis error ExecutionFailed .
Sebagian besar error ini terjadi saat batas tertentu yang ditetapkan dalam kebijakan terlampaui. Jenis error ini mencakup:
panjang nama entri objek,
jumlah entri objek,
jumlah elemen array,
kedalaman penampung,
panjang nilai string string.
Error ini juga terjadi jika payload berisi
objek JSON yang tidak valid.
|
build |
steps.jsonthreatprotection.SourceUnavailable |
500 |
Error ini terjadi jika variabel message
yang ditentukan dalam elemen <Source> adalah:
|
build |
steps.jsonthreatprotection.NonMessageVariable |
500 |
Error ini terjadi jika elemen <Source> ditetapkan ke variabel yang
bukan dari jenis
message.
|
build |
Error saat deployment
Tidak ada.
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "SourceUnavailable" |
jsonattack.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | jsonattack.JTP-SecureRequest.failed = true |
Contoh respons error
{ "fault": { "faultstring": "JSONThreatProtection[JPT-SecureRequest]: Execution failed. reason: JSONThreatProtection[JTP-SecureRequest]: Exceeded object entry name length at line 2", "detail": { "errorcode": "steps.jsonthreatprotection.ExecutionFailed" } } }
Contoh aturan error
<FaultRule name="JSONThreatProtection Policy Faults">
<Step>
<Name>AM-CustomErrorResponse</Name>
<Condition>(fault.name Matches "ExecutionFailed") </Condition>
</Step>
<Condition>(jsonattack.JPT-SecureRequest.failed = true) </Condition>
</FaultRule>
Jenis kebijakan JSONThreatProtection menentukan kode error berikut:
Kebijakan JSONtoXML
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.jsontoxml.ExecutionFailed |
500 |
Payload input (JSON) kosong atau input (JSON) yang diteruskan ke kebijakan JSON ke XML tidak valid atau salah format. | build |
steps.jsontoxml.InCompatibleTypes |
500 |
Error ini terjadi jika jenis variabel yang ditentukan dalam elemen <Source> dan elemen <OutputVariable> tidak sama. Jenis variabel yang terdapat dalam elemen <Source> dan elemen <OutputVariable> harus cocok. Jenis yang valid adalah message dan string . |
build |
steps.jsontoxml.InvalidSourceType |
500 |
Error ini terjadi jika jenis variabel yang digunakan untuk menentukan elemen <Source> tidak valid. Jenis variabel yang valid adalah message dan string . |
build |
steps.jsontoxml.OutputVariableIsNotAvailable |
500 |
Error ini terjadi jika variabel yang ditentukan dalam elemen <Source> dari Kebijakan JSON ke XML berjenis string dan elemen <OutputVariable> tidak ditentukan.
Elemen <OutputVariable> bersifat wajib jika variabel yang ditentukan dalam elemen <Source>
berjenis string. |
build |
steps.jsontoxml.SourceUnavailable |
500 |
Error ini terjadi jika variabel message
yang ditentukan dalam elemen <Source> kebijakan JSON ke XML adalah:
|
build |
Error saat deployment
Tidak ada.
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "SourceUnavailable" |
jsontoxml.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | jsontoxml.JSON-to-XML-1.failed = true |
Contoh respons error
{ "fault": { "faultstring": "JSONToXML[JSON-to-XML-1]: Source xyz is not available", "detail": { "errorcode": "steps.json2xml.SourceUnavailable" } } }
Contoh aturan error
<FaultRule name="JSON To XML Faults"> <Step> <Name>AM-SourceUnavailableMessage</Name> <Condition>(fault.name Matches "SourceUnavailable") </Condition> </Step> <Step> <Name>AM-BadJSON</Name> <Condition>(fault.name = "ExecutionFailed")</Condition> </Step> <Condition>(jsontoxml.JSON-to-XML-1.failed = true) </Condition> </FaultRule>
Kebijakan KeyValueMapOperations
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.keyvaluemapoperations.UnsupportedOperationException |
500 |
Error ini terjadi jika atribut |
build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidIndex |
Jika atribut index yang ditentukan dalam elemen <Get> kebijakan KeyValueMapOperations adalah
nol atau angka negatif, deployment proxy API akan gagal. Indeks dimulai dari
1 , sehingga indeks nol atau bilangan bulat negatif dianggap tidak valid.
|
build |
KeyIsMissing |
Error ini terjadi jika elemen <Key> benar-benar tidak ada atau elemen <Parameter> tidak ada dalam elemen <Key> di bawah <Entry> elemen <InitialEntries> kebijakan KeyValueMapOperations .
|
build |
ValueIsMissing |
Error ini terjadi jika elemen <Value> tidak ada di bawah elemen <Entry> dari elemen <InitialEntries> kebijakan KeyValueMapOperations . |
build |
Kebijakan MessageLogging
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab |
---|---|---|
steps.messagelogging.StepDefinitionExecutionFailed |
500 |
Lihat string error. |
steps.messagelogging.InvalidGoogleCloudLogName |
500 |
Error ini ditampilkan saat LogName tidak dievaluasi ke format project/{project}/logs/{logid} yang valid. |
steps.messagelogging.InvalidJsonMessage |
500 |
Error ini ditampilkan saat nilai atribut contentType telah
dipilih sebagai application/json , tetapi nilai pesan yang sebenarnya bukan string JSON
yang valid, |
steps.messagelogging.TooManyPendingLoggingRequest |
500 |
Error ini ditampilkan saat ada lebih dari 2.500 permintaan tertunda yang belum ditulis ke Cloud Logging. Batas 2.500 adalah untuk setiap pod runtime Apigee. Misalnya, jika traffic didistribusikan di dua instance pod runtime Apigee, batas efektifnya adalah 5.000 permintaan. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidProtocol |
Deployment kebijakan MessageLogging dapat gagal dengan error ini jika protokol
yang ditentukan dalam elemen <Protocol> tidak valid. Protokol yang valid adalah TCP dan UDP.
Untuk mengirim pesan syslog melalui TLS/SSL, hanya TCP yang didukung. |
build |
InvalidPort |
Deployment kebijakan MessageLogging dapat gagal dengan error ini jika nomor port tidak ditentukan dalam elemen <Port> atau jika tidak valid. Nomor port harus berupa bilangan bulat yang lebih besar dari nol. |
build |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "StepDefinitionExecutionFailed" |
messagelogging.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | messagelogging.ML-LogMessages.failed = true |
Contoh respons error
{ "fault":{ "detail":{ "errorcode":"steps.messagelogging.StepDefinitionExecutionFailed" }, "faultstring":"Execution failed" } }
Contoh aturan error
<FaultRule name="MessageLogging"> <Step> <Name>ML-LogMessages</Name> <Condition>(fault.name Matches "StepDefinitionExecutionFailed") </Condition> </Step> <Condition>(messagelogging.ML-LogMessages.failed = true) </Condition> </FaultRule>
Kebijakan OASValidation
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab |
---|---|---|
steps.oasvalidation.Failed |
400 |
Isi pesan Permintaan tidak dapat divalidasi berdasarkan Spesifikasi OpenAPI yang diberikan. |
steps.oasvalidation.Failed |
500 |
Isi pesan Respons tidak dapat divalidasi berdasarkan Spesifikasi OpenAPI yang diberikan. |
steps.oasvalidation.SourceMessageNotAvailable |
500 |
Variabel yang ditentukan dalam elemen |
steps.oasvalidation.NonMessageVariable |
500 |
Elemen |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | |
---|---|---|
ResourceDoesNotExist |
Spesifikasi OpenAPI yang dirujuk dalam elemen <OASResource> tidak ada.
|
|
ResourceCompileFailed |
Spesifikasi OpenAPI yang disertakan dalam deployment berisi error yang mencegahnya dikompilasi. Hal ini umumnya menunjukkan bahwa spesifikasi tersebut bukan Spesifikasi OpenAPI 3.0 yang terbentuk dengan baik. | |
BadResourceURL |
Spesifikasi OpenAPI yang dirujuk dalam elemen <OASResource> tidak dapat diproses. Hal ini dapat terjadi jika file bukan file JSON atau YAML atau URL file tidak ditentukan dengan benar.
|
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime. Untuk informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Deskripsi | Contoh |
---|---|---|
fault.category |
Kategori kesalahan. Jika kebijakan menolak permintaan, Step akan selalu disimpan. |
fault.category = "Step" |
fault.name |
Nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "ResourceDoesNotExist" |
fault.reason |
Alasan terjadinya error. Ini adalah string yang dapat dibaca manusia yang menjelaskan alasan terjadinya error. | OASValidation OAS-1 with resource "oas://my-spec1.yaml": failed with reason: "[ERROR - POST operation not allowed on path '/persons/13'.: []]" |
fault.subcategory |
Subkategori kesalahan. Jika kebijakan menolak permintaan, OASValidationFailure akan selalu disimpan. |
fault.subcategory = "OASValidationFailure" |
OASValidation.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | OASValidation.myoaspolicy.failed = true |
Kebijakan PopulateCache
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Terjadi saat |
---|---|---|
policies.populatecache.EntryCannotBeCached |
500 |
Entri tidak dapat di-cache. Objek pesan yang di-cache bukan instance class yang bersifat Serializable. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidCacheResourceReference |
Error ini terjadi jika elemen <CacheResource> dalam kebijakan PopulateCache ditetapkan ke
nama yang tidak ada di lingkungan tempat proxy API di-deploy. |
build |
CacheNotFound |
Cache yang ditentukan dalam elemen <CacheResource> tidak ada. |
build |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name = "EntryCannotBeCached" |
populatecache.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | populatecache.POP-CACHE-1.failed = true |
Contoh respons error
{ "fault": { "faultstring": "[entry] can not be cached. Only serializable entries are cached.", "detail": { "errorcode": "steps.populatecache.EntryCannotBeCached" } } }
Contoh aturan error
<FaultRule name="Populate Cache Fault"> <Step> <Name>AM-EntryCannotBeCached</Name> <Condition>(fault.name Matches "EntryCannotBeCached") </Condition> </Step> <Condition>(populatecache.POP-CACHE-1.failed = true) </Condition> </FaultRule>
Kebijakan LookupCache
Bagian ini menjelaskan pesan error dan variabel alur yang ditetapkan saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk proxy. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Awalan kode error
T/A
Error runtime
Kebijakan ini tidak menampilkan error runtime.
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidCacheResourceReference |
Error ini terjadi jika elemen <CacheResource> ditetapkan ke nama yang tidak ada di lingkungan tempat proxy API di-deploy. |
build |
InvalidTimeout |
Jika elemen <CacheLookupTimeoutInSeconds> ditetapkan ke
bilangan negatif, deployment proxy API akan gagal. |
build |
CacheNotFound |
Error ini terjadi jika cache tertentu yang disebutkan dalam pesan error belum dibuat di komponen Message Processor tertentu. | build |
Variabel error
T/A
Contoh respons error
T/A
Kebijakan InvalidateCache
Bagian ini menjelaskan pesan error dan variabel alur yang ditetapkan saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk proxy. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Awalan kode error
T/A
Error runtime
Kebijakan ini tidak menampilkan error runtime.
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidCacheResourceReference |
Error ini terjadi jika elemen <CacheResource> dalam kebijakan InvalidateCache ditetapkan
ke nama yang tidak ada di lingkungan tempat proxy API di-deploy. |
build |
CacheNotFound |
Error ini terjadi jika cache tertentu yang disebutkan dalam pesan error belum dibuat di komponen Message Processor tertentu. | build |
Variabel error
T/A
Contoh respons error
T/A
Kebijakan ResponseCache
Bagian ini menjelaskan pesan error dan variabel alur yang ditetapkan saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk proxy. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Awalan kode error
T/A
Error runtime
Kebijakan ini tidak menampilkan error runtime.
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidTimeout |
Jika elemen <CacheLookupTimeoutInSeconds> kebijakan ResponseCache ditetapkan ke bilangan negatif, deployment proxy API akan gagal. |
build |
InvalidCacheResourceReference |
Error ini terjadi jika elemen <CacheResource> dalam kebijakan ResponseCache ditetapkan ke nama yang tidak ada di lingkungan tempat proxy API di-deploy. |
build |
ResponseCacheStepAttachmentNotAllowedReq |
Error ini terjadi jika kebijakan ResponseCache yang sama dilampirkan ke beberapa jalur permintaan dalam alur proxy API. |
build |
ResponseCacheStepAttachmentNotAllowedResp |
Error ini terjadi jika kebijakan ResponseCache yang sama dilampirkan ke beberapa jalur respons dalam alur proxy API. |
build |
InvalidMessagePatternForErrorCode |
Error ini terjadi jika elemen <SkipCacheLookup> atau <SkipCachePopulation>
dalam kebijakan ResponseCache berisi kondisi yang tidak valid. |
build |
CacheNotFound |
Error ini terjadi jika cache tertentu yang disebutkan dalam pesan error belum dibuat di komponen Message Processor tertentu. | build |
Variabel error
T/A
Contoh respons error
T/A
Kebijakan OAuthV2
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Ditampilkan oleh operasi |
---|---|---|---|
steps.oauth.v2.access_token_expired |
401 |
Masa berlaku token akses telah berakhir. |
|
steps.oauth.v2.access_token_not_approved |
401 |
Token akses telah dicabut. | VerifyAccessToken |
steps.oauth.v2.apiresource_doesnot_exist |
401 |
Resource yang diminta tidak ada produk API yang terkait dengan token akses. | VerifyAccessToken |
steps.oauth.v2.FailedToResolveAccessToken |
500 |
Kebijakan diharapkan menemukan token akses dalam variabel yang ditentukan dalam elemen <AccessToken> , tetapi variabel tersebut tidak dapat di-resolve. |
GenerateAccessToken |
steps.oauth.v2.FailedToResolveAuthorizationCode |
500 |
Kebijakan diharapkan menemukan kode otorisasi dalam variabel yang ditentukan dalam elemen <Code> , tetapi variabel tersebut tidak dapat di-resolve. |
GenerateAuthorizationCode |
steps.oauth.v2.FailedToResolveClientId |
500 |
Kebijakan diharapkan menemukan Client ID dalam variabel yang ditentukan dalam elemen <ClientId> , tetapi variabel tersebut tidak dapat di-resolve. |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
steps.oauth.v2.FailedToResolveRefreshToken |
500 |
Kebijakan diharapkan menemukan token refresh dalam variabel yang ditentukan dalam elemen <RefreshToken> , tetapi variabel tersebut tidak dapat di-resolve. |
RefreshAccessToken |
steps.oauth.v2.FailedToResolveToken |
500 |
Kebijakan diharapkan menemukan token dalam variabel yang ditentukan dalam elemen <Tokens> , tetapi variabel tidak dapat di-resolve. |
|
steps.oauth.v2.InsufficientScope |
403 | Token akses yang ditampilkan dalam permintaan memiliki cakupan yang tidak cocok dengan cakupan yang ditentukan dalam kebijakan token akses verifikasi. Untuk mempelajari cakupan, lihat Menggunakan cakupan OAuth2. | VerifyAccessToken |
steps.oauth.v2.invalid_access_token |
401 |
Token akses yang dikirim dari klien tidak valid. | VerifyAccessToken |
steps.oauth.v2.invalid_client |
401 |
Nama error ini ditampilkan saat properti |
GenerateAccessToken RefreshAccessToken |
steps.oauth.v2.invalid_request |
400 | Nama error ini digunakan untuk beberapa jenis error, biasanya untuk parameter yang tidak ada atau salah yang dikirim dalam permintaan. Jika <GenerateResponse>
ditetapkan ke false , gunakan variabel error (dijelaskan di bawah) untuk mengambil detail tentang
error, seperti nama dan penyebab error. |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
steps.oauth.v2.InvalidAccessToken |
401 |
Header otorisasi tidak memiliki kata Bearer , yang diperlukan. Misalnya: Authorization: Bearer your_access_token |
VerifyAccessToken |
steps.oauth.v2.InvalidAPICallAsNo\ |
401 |
Proxy atau operasi API yang sedang dieksekusi tidak ada dalam Produk yang terkait dengan token akses. Tips: Pastikan produk yang terkait dengan token akses dikonfigurasi dengan benar. Misalnya, jika Anda menggunakan karakter pengganti di jalur resource, pastikan karakter pengganti digunakan dengan benar. Lihat Mengelola produk API untuk mengetahui detailnya. Lihat juga Verifikasi Token Akses Oauth2.0 menampilkan error "Panggilan API tidak valid karena tidak ada kecocokan apiproduct" untuk panduan selengkapnya tentang penyebab error ini. |
VerifyAccessToken |
steps.oauth.v2.InvalidClientIdentifier |
500 |
Nama error ini ditampilkan saat properti |
|
steps.oauth.v2.InvalidParameter |
500 |
Kebijakan harus menentukan token akses atau kode otorisasi, tetapi tidak keduanya. | GenerateAuthorizationCode GenerateAccessTokenImplicitGrant |
steps.oauth.v2.InvalidTokenType |
500 |
Elemen <Tokens>/<Token> mengharuskan Anda menentukan jenis token (misalnya, refreshtoken ). Jika klien meneruskan jenis yang salah, error ini akan ditampilkan. |
ValidateToken InvalidateToken |
steps.oauth.v2.MissingParameter |
500 |
Jenis respons adalah token , tetapi tidak ada jenis pemberian yang ditentukan. |
GenerateAuthorizationCode GenerateAccessTokenImplicitGrant |
steps.oauth.v2.UnSupportedGrantType |
500 |
Klien menentukan jenis hibah yang tidak didukung oleh kebijakan (tidak tercantum dalam
elemen |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
Error runtime khusus token JWT
Kode dan deskripsi error runtime untuk alur token autentikasi JWT bergantung pada konteks alur OAuth2:
- Jika konteks alur adalah pembuatan atau pembaruan token, lihat Kode error untuk alur pembuatan dan pembaruan token JWT di bawah.
- Untuk alur verifikasi token, lihat Kode error untuk alur verifikasi token di bawah.
Kode error untuk alur pembuatan dan pembaruan token JWT
Untuk alur OAuth2 yang membuat atau memperbarui token JWT, respons error mematuhi respons error yang ditentukan dalam RFC6749. Untuk mengetahui detailnya, lihat Bagian 5.2 Respons Error.
Kode error untuk alur verifikasi token
Kode error yang tercantum dalam tabel berikut hanya berlaku untuk operasi VerifyAccessToken.
Kode kerusakan | Status HTTP | Penyebab | Ditampilkan oleh operasi |
---|---|---|---|
oauth.v2.JWTSigningFailed |
401 |
Kebijakan tidak dapat menandatangani JWT. |
|
oauth.v2.InvalidValueForJWTAlgorithm |
401 |
Hal ini terjadi jika algoritma tidak ada di token akses JWT atau jika nilai tidak didukung. |
|
oauth.v2.InsufficientKeyLength |
401 |
Dalam Pembuatan JWT, untuk kunci yang kurang dari ukuran minimum untuk algoritma HS384 atau HS512 |
|
oauth.v2.JWTAlgorithmMismatch |
401 |
Algoritma yang ditentukan dalam kebijakan Buat tidak cocok dengan algoritma yang diharapkan dalam kebijakan Verifikasi. Algoritma yang ditentukan harus cocok. |
|
oauth.v2.JWTDecodingFailed |
401 |
Kebijakan tidak dapat mendekode JWT. JWT mungkin rusak. |
|
oauth.v2.MissingMandatoryClaimsInJWT |
401 |
Terjadi saat klaim yang diperlukan tidak ada di Token Akses Jwt |
|
oauth.v2.InvalidJWTSignature |
401 |
Hal ini terjadi jika tanda tangan token akses JWT tidak dapat diverifikasi atau jika tanda tangan tidak valid. |
|
oauth.v2.InvalidTypeInJWTHeader |
401 |
Terjadi saat jenis JWT bukan at+Jwt |
|
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab |
---|---|
InvalidValueForExpiresIn |
Untuk elemen |
InvalidValueForRefreshTokenExpiresIn |
Untuk elemen <RefreshTokenExpiresIn> , nilai yang valid adalah bilangan bulat positif dan -1 . |
InvalidGrantType |
Jenis pemberian yang tidak valid ditentukan di elemen <SupportedGrantTypes> . Lihat referensi kebijakan untuk mengetahui daftar jenis yang valid. |
ExpiresInNotApplicableForOperation |
Pastikan operasi yang ditentukan dalam elemen <Operations> mendukung masa berlaku. Misalnya, operasi VerifyToken tidak. |
RefreshTokenExpiresInNotApplicableForOperation |
Pastikan operasi yang ditentukan dalam elemen <Operations> mendukung masa berlaku
token refresh. Misalnya, operasi VerifyToken tidak melakukannya. |
GrantTypesNotApplicableForOperation |
Pastikan jenis hibah yang ditentukan di <SupportedGrantTypes> didukung untuk
operasi yang ditentukan. |
OperationRequired |
Anda harus menentukan operasi dalam kebijakan ini menggunakan elemen |
InvalidOperation |
Anda harus menentukan operasi yang valid dalam kebijakan ini menggunakan elemen |
TokenValueRequired |
Anda harus menentukan nilai <Token> token dalam elemen <Tokens> . |
Error deployment khusus token JWT
Error deployment ini khusus untuk kebijakan yang menggunakan operasi token JWT.
Nama error | Penyebab |
---|---|
InvalidValueForAlgorithm |
Algoritma yang ditentukan dalam elemen <Algorithm> tidak
ada dalam daftar algoritma yang tersedia atau tidak ada. |
MissingKeyConfiguration |
Elemen <SecretKey> , <PrivateKey> , atau
<PublicKey> yang diperlukan tidak ada, bergantung pada algoritma yang digunakan. |
EmptyValueElementForKeyConfiguration |
Elemen turunan <Value> yang diperlukan tidak ditentukan dalam
elemen <PrivateKey> , <PublicKey> , atau <SecretKey> |
InvalidKeyConfiguration |
Elemen <PrivateKey> tidak digunakan dengan algoritma keluarga RSA atau elemen
<SecretKey> tidak digunakan dengan algoritma Keluarga HS. |
EmptyRefAttributeForKeyconfiguration |
Atribut ref dari elemen turunan <Value> dari elemen <PrivateKey> , <PublicKey> , atau <SecretKey> kosong. |
InvalidVariableNameForKey |
Nama variabel alur yang ditentukan dalam atribut ref dari elemen
turunan <Value> dari elemen <PrivateKey> ,
<PublicKey> , atau <SecretKey> tidak
berisi awalan private . |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name = "invalid_request" |
oauthV2.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.GenerateAccesstoken.failed = true |
oauthV2.policy_name.fault.name |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.GenerateAccesstoken.fault.name = invalid_request
|
oauthV2.policy_name.fault.cause |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.GenerateAccesstoken.cause = Required param : grant_type |
Contoh respons error
Respons ini dikirim kembali ke klien jika elemen <GenerateResponse>
bernilai true.
Jika <GenerateResponse>
true, kebijakan akan menampilkan error
dalam format ini untuk operasi yang menghasilkan token dan kode. Untuk mengetahui daftar lengkapnya, lihat
referensi respons error
HTTP OAuth.
{"ErrorCode" : "invalid_client", "Error" :"ClientId is Invalid"}
Jika <GenerateResponse>
bernilai true, kebijakan akan menampilkan error dalam format ini untuk operasi verifikasi dan validasi. Untuk mengetahui daftar lengkapnya, lihat referensi respons error HTTP OAuth.
{ { "fault":{ "faultstring":"Invalid Access Token", "detail":{ "errorcode":"keymanagement.service.invalid_access_token" } } }
Contoh aturan error
<FaultRule name="OAuthV2 Faults"> <Step> <Name>AM-InvalidClientResponse</Name> <Condition>(fault.name = "invalid_client") OR (fault.name = "InvalidClientIdentifier")</Condition> </Step> <Step> <Name>AM-InvalidTokenResponse</Name> <Condition>(fault.name = "invalid_access_token")</Condition> </Step> <Condition>(oauthV2.failed = true) </Condition> </FaultRule>
Kebijakan GetOAuthV2Info
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi. Nama error yang ditampilkan di bawah adalah string
yang ditetapkan ke variabel fault.name
saat error terjadi. Lihat bagian variabel
Error di bawah untuk mengetahui detail selengkapnya.
Kode kerusakan | Status HTTP | Penyebab |
---|---|---|
steps.oauth.v2.access_token_expired |
500 |
Masa berlaku token akses yang dikirim ke kebijakan telah berakhir. |
steps.oauth.v2.authorization_code_expired |
500 |
Kode otorisasi yang dikirim ke kebijakan telah berakhir masa berlakunya. |
steps.oauth.v2.invalid_access_token |
500 |
Token akses yang dikirim ke kebijakan tidak valid. |
steps.oauth.v2.invalid_client-invalid_client_id |
500 |
Client ID yang dikirim ke kebijakan tidak valid. |
steps.oauth.v2.invalid_refresh_token |
500 |
Token refresh yang dikirim ke kebijakan tidak valid. |
steps.oauth.v2.invalid_request-authorization_code_invalid |
500 |
Kode otorisasi yang dikirim ke kebijakan tidak valid. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 | Lihat Verifikasi Token Akses Oauth2.0 menampilkan error "Panggilan API tidak valid karena tidak ada kecocokan produk API" untuk mengetahui informasi tentang cara memecahkan masalah error ini. |
steps.oauth.v2.refresh_token_expired |
500 |
Masa berlaku token refresh yang dikirim ke kebijakan telah berakhir. |
Error saat deployment
Lihat pesan yang dilaporkan di UI untuk mengetahui informasi tentang error deployment.
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "IPDeniedAccess" |
oauthV2.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.GetTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.GetToKenInfo.fault.name = invalid_client-invalid_client_id |
oauthV2.policy_name.fault.cause |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.GetTokenInfo.cause = ClientID is Invalid |
Contoh respons error
{ "fault":{ "faultstring":"ClientId is Invalid", "detail":{ "errorcode":"keymanagement.service.invalid_client-invalid_client_id" } } }
Contoh aturan error
<FaultRule name="OAuthV2 Faults"> <Step> <Name>AM-InvalidClientIdResponse</Name> </Step> <Condition>(fault.name = "invalid_client-invalid_client_id")</Condition> </FaultRule>
Kebijakan SetOAuthV2Info
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab |
---|---|---|
steps.oauth.v2.access_token_expired |
500 |
Masa berlaku token akses yang dikirim ke kebijakan telah berakhir. |
steps.oauth.v2.invalid_access_token |
500 |
Token akses yang dikirim ke kebijakan tidak valid. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 |
Lihat Verifikasi Token Akses Oauth2.0 menampilkan error "Panggilan API tidak valid karena tidak ada kecocokan apiproduct" untuk mengetahui informasi tentang cara memecahkan masalah error ini. |
Error saat deployment
Lihat pesan yang dilaporkan di UI untuk mengetahui informasi tentang error deployment.
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.SetTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.SetTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.SetTokenInfo.cause = Invalid Access Token |
Contoh respons error
{ "fault": { "faultstring": "Invalid Access Token", "detail": { "errorcode": "keymanagement.service.invalid_access_token" } } }
Contoh aturan error
<FaultRule name=SetOAuthV2Info Faults"> <Step> <Name>AM-InvalidTokenResponse</Name> <Condition>(fault.name = "invalid_access_token")</Condition> </Step> <Condition>(oauthV2.failed = true) </Condition> </FaultRule>
Kebijakan DeleteOAuthV2Info
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab |
---|---|---|
steps.oauth.v2.invalid_access_token |
401 |
Token akses yang dikirim ke kebijakan tidak valid. |
steps.oauth.v2.invalid_request-authorization_code_invalid |
401 |
Kode otorisasi yang dikirim ke kebijakan tidak valid. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 |
Lihat Verifikasi Token Akses Oauth2.0 menampilkan error "Panggilan API tidak valid karena tidak ada kecocokan apiproduct" untuk mengetahui informasi tentang cara memecahkan masalah error ini. |
Error saat deployment
Lihat pesan yang dilaporkan di UI untuk mengetahui informasi tentang error deployment.
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.DeleteTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.DeleteTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.DeleteTokenInfo.cause = Invalid Access Token |
Contoh respons error
{ "fault": { "faultstring": "Invalid Access Token", "detail": { "errorcode": "keymanagement.service.invalid_access_token" } } }
Contoh aturan error
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults"> <Step> <Name>AM-InvalidTokenResponse</Name> </Step> <Condition>(fault.name = "invalid_access_token")</Condition> </FaultRule>
Kebijakan PythonScript
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.script.ScriptEvaluationFailed |
500 |
Kebijakan PythonScript dapat menampilkan beberapa jenis error ScriptExecutionFailed. Jenis error yang umum terjadi meliputi NameError dan ZeroDivisionError. | build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidResourceUrlFormat |
Jika format URL resource yang ditentukan dalam elemen <ResourceURL> atau
<IncludeURL> kebijakan PythonScript tidak valid, deployment proxy API akan gagal. |
build |
InvalidResourceUrlReference |
Jika elemen <ResourceURL> atau <IncludeURL>
merujuk ke file PythonScript yang tidak ada, deployment proxy API akan gagal.
File sumber yang dirujuk harus ada di tingkat proxy, lingkungan, atau organisasi API. |
build |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime. Untuk informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "ScriptExecutionFailed" |
pythonscript.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | pythonscript.PythonScript-1.failed = true |
Contoh respons error
{ "fault": { "faultstring": "Execution of SetResponse failed with error: Pythonscript runtime error: "ReferenceError: "status" is not defined.\"", "detail": { "errorcode": "steps.script.ScriptExecutionFailed" } } }
Contoh aturan error
<FaultRule name="PythonScript Policy Faults"> <Step> <Name>AM-CustomErrorResponse</Name> <Condition>(fault.name Matches "ScriptExecutionFailed") </Condition> </Step> <Condition>(pythonscript.PythonScript-1.failed = true) </Condition> </FaultRule>
Kebijakan kuota
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
policies.ratelimit.FailedToResolveQuotaIntervalReference |
500 |
Terjadi jika elemen <Interval> tidak ditentukan dalam kebijakan Quota . Elemen ini wajib diisi dan digunakan untuk menentukan interval waktu yang berlaku untuk kuota. Interval waktu
dapat berupa menit, jam, hari, minggu, atau bulan seperti yang ditentukan dengan elemen <TimeUnit> . |
build |
policies.ratelimit.FailedToResolveQuotaIntervalTimeUnitReference |
500 |
Terjadi jika elemen <TimeUnit> tidak ditentukan dalam kebijakan Quota . Elemen ini wajib dan digunakan untuk menentukan satuan waktu yang berlaku untuk kuota. Interval waktu
dapat berupa menit, jam, hari, minggu, atau bulan. |
build |
policies.ratelimit.InvalidMessageWeight |
500 |
Terjadi jika nilai elemen <MessageWeight> yang ditentukan melalui variabel alur tidak valid (nilai non-bilangan bulat). |
build |
policies.ratelimit.QuotaViolation |
500 |
Batas kuota terlampaui. | T/A |
Error saat deployment
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidQuotaInterval |
Jika interval kuota yang ditentukan dalam elemen <Interval> bukan
bilangan bulat, deployment proxy API akan gagal. Misalnya, jika interval kuota yang ditentukan adalah 0,1 di elemen <Interval> , deployment proxy API akan gagal.
|
build |
InvalidQuotaTimeUnit |
Jika unit waktu yang ditentukan dalam elemen <TimeUnit> tidak didukung, deployment proxy API akan gagal. Unit waktu yang didukung adalah minute ,
hour , day , week , dan month .
|
build |
InvalidQuotaType |
Jika jenis kuota yang ditentukan oleh atribut type dalam elemen <Quota> tidak valid, deployment proxy API akan gagal. Jenis kuota yang didukung adalah default , calendar , flexi , dan rollingwindow .
|
build |
InvalidStartTime |
Jika format waktu yang ditentukan dalam elemen <StartTime> tidak valid, deployment proxy API akan gagal. Format yang valid adalah yyyy-MM-dd HH:mm:ss ,
yang merupakan format tanggal dan waktu ISO 8601. Misalnya,
jika waktu yang ditentukan dalam elemen <StartTime> adalah
7-16-2017 12:00:00 , deployment proxy API akan gagal.
|
build |
StartTimeNotSupported |
Jika elemen <StartTime> ditentukan dengan jenis kuota yang bukan
jenis calendar , deployment proxy API akan gagal. Elemen <StartTime> hanya didukung untuk jenis kuota calendar . Misalnya, jika atribut type ditetapkan
ke flexi atau rolling window di elemen <Quota> , deployment proxy API akan gagal.
|
build |
InvalidTimeUnitForDistributedQuota |
Jika elemen <Distributed> ditetapkan ke true dan elemen <TimeUnit> ditetapkan ke
second , deployment proxy API akan gagal. Timeunit second tidak valid untuk kuota yang didistribusikan. |
build |
InvalidSynchronizeIntervalForAsyncConfiguration |
Jika nilai yang ditentukan untuk elemen <SyncIntervalInSeconds> dalam
elemen <AsynchronousConfiguration> dalam kebijakan Quota kurang dari nol, deployment proxy API akan gagal. |
build |
InvalidAsynchronizeConfigurationForSynchronousQuota |
Jika nilai elemen <AsynchronousConfiguration> ditetapkan ke true dalam kebijakan Quota , yang juga memiliki konfigurasi asinkron yang ditentukan menggunakan elemen <AsynchronousConfiguration> , deployment proxy API akan gagal. |
build |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "QuotaViolation" |
ratelimit.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | ratelimit.QT-QuotaPolicy.failed = true |
Contoh respons error
{ "fault":{ "detail":{ "errorcode":"policies.ratelimit.QuotaViolation" }, "faultstring":"Rate limit quota violation. Quota limit exceeded. Identifier : _default" } }
Contoh aturan error
<FaultRules> <FaultRule name="Quota Errors"> <Step> <Name>JavaScript-1</Name> <Condition>(fault.name Matches "QuotaViolation") </Condition> </Step> <Condition>ratelimit.Quota-1.failed=true</Condition> </FaultRule> </FaultRules>
Kebijakan ResetQuota
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
policies.resetquota.InvalidRLPolicy |
500 |
Kebijakan Quota yang ditentukan dalam elemen <Quota> dari kebijakan ResetQuota
tidak ditentukan di proxy API sehingga tidak tersedia selama alur. Elemen <Quota> wajib diisi dan mengidentifikasi kebijakan Quota target yang penghitungnya harus diperbarui melalui kebijakan ResetQuota . |
build |
policies.resetquota.FailedToResolveAllowCountRef |
T/A | Referensi ke variabel yang berisi jumlah izin di elemen <Allow> kebijakan tidak dapat di-resolve ke nilai. Elemen ini bersifat wajib dan menentukan jumlah
untuk mengurangi penghitung kuota. |
build |
policies.resetquota.FailedToResolveRLPolicy |
500 |
Variabel yang dirujuk oleh atribut ref dalam elemen <Quota>
tidak dapat di-resolve. |
build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidCount |
Jika nilai jumlah yang ditentukan dalam elemen <Allow> Kebijakan ResetQuota bukan bilangan bulat, deployment proxy API akan gagal.
|
build |
RaiseFaultpolicy
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab |
---|---|---|
steps.raisefault.RaiseFault |
500 |
Lihat string error. |
Error saat deployment
Tidak ada.
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name = "RaiseFault" |
raisefault.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | raisefault.RF-ThrowError.failed = true |
Contoh respons error
{ "fault":{ "detail":{ "errorcode":"steps.raisefault.RaiseFault" }, "faultstring":"Raising fault. Fault name: [name]" } }
Kebijakan RegularExpressionProtection
Bagian ini menjelaskan kode dan pesan error yang ditampilkan serta variabel error
yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika
Anda mengembangkan aturan error untuk menangani error. Jika Anda ingin menangkap error dan menampilkan error kustom
Anda sendiri, tetapkan atribut continueOnError="true"
pada elemen root kebijakan.
Untuk mempelajari lebih lanjut, lihat
Yang perlu Anda ketahui tentang error kebijakan dan Menangani
error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode Error | Pesan |
---|---|
ExecutionFailed |
Failed to execute the RegularExpressionProtection StepDefinition {0}. Reason: {1} |
InstantiationFailed |
Failed to instantiate the RegularExpressionProtection StepDefinition {0} |
NonMessageVariable |
Variable {0} does not resolve to a Message |
SourceMessageNotAvailable |
{0} message is not available for RegularExpressionProtection StepDefinition {1} |
ThreatDetected |
Regular Expression Threat Detected in {0}: regex: {1} input: {2} |
VariableResolutionFailed |
Failed to resolve variable {0} |
Error saat deployment
Kode Error | Pesan | Perbaiki |
---|---|---|
CannotBeConvertedToNodeset |
RegularExpressionProtection {0}: Result of xpath {1} cannot be converted to nodeset.
Context {2} |
build |
DuplicatePrefix |
RegularExpressionProtection {0}: Duplicate prefix {1} |
build |
EmptyJSONPathExpression |
RegularExpressionProtection {0}: Empty JSONPath expression |
build |
EmptyXPathExpression |
RegularExpressionProtection {0}: Empty XPath expression |
build |
InvalidRegularExpression |
RegularExpressionProtection {0}: Invalid Regular Expression {1}, Context {2} |
build |
JSONPathCompilationFailed |
RegularExpressionProtection {0}: Failed to compile jsonpath {1}. Context {2} |
build |
NONEmptyPrefixMappedToEmptyURI |
RegularExpressionProtection {0}: Non-empty prefix {1} cannot be mapped to empty
uri |
build |
NoPatternsToEnforce |
RegularExpressionProtection {0}: No patterns to enforce in {1} |
build |
NothingToEnforce |
RegularExpressionProtection {0}: at least one of URIPath, QueryParam, Header,
FormParam, XMLPayload, JSONPayload is mandatory |
build |
XPathCompilationFailed |
RegularExpressionProtection {0}: Failed to compile xpath {1}. Context {2} |
build |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel di atas. | fault.name Matches "ThreatDetected" |
regularexpressionprotection.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | regularexpressionprotection.Regular-Expressions-Protection-1.failed = true |
Kebijakan SAMLAssertion
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
SourceNotConfigured |
Satu atau beberapa elemen berikut dari kebijakan ValidateSAMLAssertion
tidak ditentukan atau kosong: <Source> , <XPath> ,
<Namespaces> , <Namespace> .
|
build |
TrustStoreNotConfigured |
Jika elemen <TrustStore> kosong atau tidak ditentukan dalam kebijakan ValidateSAMLAssertion , deployment proxy API akan gagal.
Truststore yang valid diperlukan.
|
build |
NullKeyStoreAlias |
Jika elemen turunan <Alias> kosong atau tidak ditentukan dalam elemen <Keystore>
kebijakan GenerateSAMLAssertion , deployment proxy
API akan gagal. Alias keystore yang valid wajib diisi.
|
build |
NullKeyStore |
Jika elemen turunan <Name> kosong atau tidak ditentukan dalam elemen <Keystore>
kebijakan GenerateSAMLAssertion , deployment proxy
API akan gagal. Nama keystore yang valid wajib diisi.
|
build |
NullIssuer |
Jika elemen <Issuer> kosong atau tidak ditentukan dalam kebijakan GenerateSAMLAssertion , deployment proxy API akan gagal. Nilai
<Issuer> yang valid diperlukan.
|
build |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error. Nama error adalah bagian terakhir dari kode error. | fault.name = "InvalidMediaTpe" |
GenerateSAMLAssertion.failed |
Untuk konfigurasi kebijakan pernyataan SAML yang valid, awalan error-nya adalah
ValidateSAMLAssertion . |
GenerateSAMLAssertion.failed = true |
Contoh respons error
{ "fault": { "faultstring": "GenerateSAMLAssertion[GenSAMLAssert]: Invalid media type", "detail": { "errorcode": "steps.saml.generate.InvalidMediaTpe" } } }
Contoh aturan error
<FaultRules> <FaultRule name="invalid_saml_rule"> <Step> <Name>invalid-saml</Name> </Step> <Condition>(GenerateSAMLAssertion.failed = "true")</Condition> </FaultRule> </FaultRules>
Kebijakan ServiceCallout
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.servicecallout.ExecutionFailed |
500 |
Error ini dapat terjadi jika:
|
build |
steps.servicecallout.RequestVariableNotMessageType |
500 |
Variabel Request yang ditentukan dalam kebijakan bukan dari jenis Message . Misalnya, jika
berupa string atau jenis non-pesan lainnya, Anda akan melihat error ini. |
build |
steps.servicecallout.RequestVariableNotRequestMessageType |
500 |
Variabel Request yang ditentukan dalam kebijakan bukan dari jenis RequestMessage . Misalnya, jika jenisnya adalah Response, Anda akan melihat error ini. |
build |
googletoken.EmptyIDTokenAudience |
500 |
|
|
messaging.adaptors.http.filter.GoogleTokenGenerationFailure |
500 |
Error ini dapat terjadi jika proxy API dikonfigurasi dengan elemen <Authentication>. Kemungkinan penyebabnya meliputi:
<GoogleAccessToken> digunakan dan satu atau beberapa cakupan yang tidak valid diberikan. Misalnya, cari kesalahan ketik atau cakupan kosong.
Khusus untuk Apigee hybrid, periksa log penampung runtime dan telusuri
|
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
URLMissing |
Elemen <URL> di dalam <HTTPTargetConnection>
tidak ada atau kosong. |
build |
ConnectionInfoMissing |
Error ini terjadi jika kebijakan tidak memiliki elemen <HTTPTargetConnection> atau <LocalTargetConnection> . |
build |
InvalidTimeoutValue |
Error ini terjadi jika nilai <Timeout> negatif atau nol. |
build |
FAILED_PRECONDITION |
Error ini terjadi jika akun layanan tidak ada saat proxy dikonfigurasi dengan tag <Authentication>.
Contoh: Deployment of \"organizations/foo/apis/apiproxy/revisions/1\" requires a service account identity, but one was not provided with the request. |
|
PERMISSION_DENIED |
Error ini terjadi jika ada masalah izin dengan akun layanan jika proxy dikonfigurasi dengan tag <Authentication>. Kemungkinan penyebab:
|
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name = "RequestVariableNotMessageType" |
servicecallout.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | servicecallout.SC-GetUserData.failed = true |
Contoh respons error
{ "fault":{ "detail":{ "errorcode":"steps.servicecallout.RequestVariableNotMessageType" }, "faultstring":"ServiceCallout[ServiceCalloutGetMockResponse]: request variable data_str value is not of type Message" } }
Contoh aturan error
<FaultRule name="RequestVariableNotMessageType"> <Step> <Name>AM-RequestVariableNotMessageType</Name> </Step> <Condition>(fault.name = "RequestVariableNotMessageType")</Condition> </FaultRule>
Kebijakan SOAPMessageValidation
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.messagevalidation.SourceMessageNotAvailable |
500 |
Error ini terjadi jika variabel yang ditentukan dalam elemen
|
build |
steps.messagevalidation.NonMessageVariable |
500 |
Error ini terjadi jika elemen Variabel jenis pesan mewakili seluruh permintaan dan respons HTTP. Variabel alur Apigee bawaan |
build |
steps.messagevalidation.Failed |
500 | Error ini terjadi jika kebijakan SOAPMessageValidation gagal memvalidasi payload pesan input terhadap skema XSD atau definisi WSDL. Hal ini juga akan terjadi jika ada JSON atau XML yang salah format dalam pesan payload. | build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidResourceType |
Elemen <ResourceURL> dalam kebijakan SOAPMessageValidation ditetapkan ke jenis resource
yang tidak didukung oleh kebijakan.
|
build |
ResourceCompileFailed |
Skrip resource yang dirujuk dalam elemen <ResourceURL> kebijakan SOAPMessageValidation
berisi error yang mencegahnya dikompilasi.
|
build |
RootElementNameUnspecified |
Elemen <Element> dalam kebijakan SOAPMessageValidation tidak berisi nama elemen root. |
build |
InvalidRootElementName |
Elemen <Element> dalam kebijakan SOAPMessageValidation berisi nama elemen root
yang tidak mematuhi aturan XML untuk penamaan elemen yang valid. |
build |
Kebijakan SpikeArrest
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
policies.ratelimit.FailedToResolveSpikeArrestRate |
500 |
Error ini terjadi jika referensi ke variabel yang berisi setelan tarif
dalam elemen <Rate> tidak dapat di-resolve ke nilai dalam kebijakan
SpikeArrest . Elemen ini bersifat wajib dan digunakan untuk menentukan rasio penangkapan lonjakan dalam
bentuk intpm atau intps . |
build |
policies.ratelimit.InvalidMessageWeight |
500 |
Error ini terjadi jika nilai yang ditentukan untuk elemen <MessageWeight> melalui variabel alur tidak valid (nilai non-bilangan bulat). |
build |
policies.ratelimit.SpikeArrestViolation |
429 |
Batas kapasitas maksimum terlampaui. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidAllowedRate |
Jika rasio penangkapan lonjakan yang ditentukan dalam elemen <Rate> dari kebijakan SpikeArrest
bukan bilangan bulat atau jika rasio tidak memiliki ps atau pm sebagai akhiran, deployment proxy API akan gagal. |
build |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "SpikeArrestViolation" |
ratelimit.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | ratelimit.SA-SpikeArrestPolicy.failed = true |
Contoh respons error
Berikut adalah contoh respons error:
{ "fault":{ "detail":{ "errorcode":"policies.ratelimit.SpikeArrestViolation" }, "faultstring":"Spike arrest violation. Allowed rate : 10ps" } }
Contoh aturan error
Berikut adalah contoh aturan error untuk menangani error SpikeArrestViolation
:
<FaultRules> <FaultRule name="Spike Arrest Errors"> <Step> <Name>JavaScript-1</Name> <Condition>(fault.name Matches "SpikeArrestViolation") </Condition> </Step> <Condition>ratelimit.Spike-Arrest-1.failed=true</Condition> </FaultRule> </FaultRules>
Kebijakan VerifyAPIKey
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab |
---|---|---|
keymanagement.service.consumer_key_missing_api_product_association |
400 |
Kredensial aplikasi tidak memiliki pengaitan produk API. Harap kaitkan aplikasi kunci dengan produk API. Perhatikan bahwa hal ini berlaku untuk semua jenis aplikasi, seperti aplikasi developer dan aplikasi AppGroup. |
keymanagement.service.DeveloperStatusNotActive |
401 |
Developer yang membuat Aplikasi Developer yang memiliki kunci API yang Anda gunakan memiliki status tidak aktif. Jika status Developer Aplikasi disetel ke tidak aktif, Aplikasi Developer apa pun yang dibuat oleh developer tersebut akan dinonaktifkan. Pengguna admin dengan izin yang sesuai (seperti Administrator Organisasi) dapat mengubah status developer dengan cara berikut:
|
keymanagement.service.invalid_client-app_not_approved |
401 |
Aplikasi Developer yang terkait dengan kunci API dicabut. Aplikasi yang dicabut tidak dapat mengakses produk API apa pun dan tidak dapat memanggil API apa pun yang dikelola oleh Apigee. Admin organisasi dapat mengubah status Aplikasi Developer menggunakan Apigee API. Lihat Membuat Pasangan Kunci atau Memperbarui Status Aplikasi Developer. |
oauth.v2.FailedToResolveAPIKey |
401 |
Kebijakan ini diharapkan menemukan kunci API dalam variabel yang ditentukan dalam elemen <APIKey> kebijakan. Error ini muncul saat variabel yang diharapkan tidak ada (tidak dapat di-resolve). |
oauth.v2.InvalidApiKey |
401 |
Kunci API diterima oleh Apigee, tetapi tidak valid. Saat Apigee mencari kunci di database-nya, kunci tersebut harus sama persis dengan kunci yang dikirim dalam permintaan. Jika API berfungsi sebelumnya, pastikan kunci tidak dibuat ulang. Jika kunci dibuat ulang, Anda akan melihat error ini jika mencoba menggunakan kunci lama. Untuk mengetahui detailnya, lihat Mengontrol akses ke API Anda dengan mendaftarkan aplikasi. |
oauth.v2.InvalidApiKeyForGivenResource |
401 |
Kunci API diterima oleh Apigee, dan kunci tersebut valid; tetapi, kunci tersebut tidak cocok dengan kunci yang disetujui di Aplikasi Developer yang terkait dengan proxy API Anda melalui Produk. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab |
---|---|
SpecifyValueOrRefApiKey |
Elemen <APIKey> tidak memiliki nilai atau kunci yang ditentukan. |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "FailedToResolveAPIKey" |
oauthV2.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | oauthV2.VK-VerifyAPIKey.failed = true |
Contoh respons error
{ "fault":{ "faultstring":"Invalid ApiKey", "detail":{ "errorcode":"oauth.v2.InvalidApiKey" } } }
{ "fault":{ "detail":{ "errorcode":"keymanagement.service.DeveloperStatusNotActive" }, "faultstring":"Developer Status is not Active" } }
Contoh aturan error
<FaultRule name="FailedToResolveAPIKey"> <Step> <Name>AM-FailedToResolveAPIKey</Name> </Step> <Condition>(fault.name Matches "FailedToResolveAPIKey") </Condition> </FaultRule>
Kebijakan VerifyIAM
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab |
---|---|---|
steps.verifyiam.CredentialSourceRefUnresolved |
400 |
Variabel alur yang disediakan di dalam sumber kredensial tidak dapat di-resolve. |
steps.verifyiam.CredentialValueNotProvided |
400 |
Kredensial tidak ditemukan. Jika referensi sumber kredensial tidak diberikan, kita akan melihat tempat default seperti header otorisasi. |
steps.verifyiam.Forbidden |
403 |
Permintaan tidak dapat diteruskan karena tidak memiliki izin yang memadai atau tidak memiliki cakupan akses atau masalah terkait lainnya. |
steps.verifyiam.MiscellaneousAuthorizationConfigurationError |
500 |
Masalah dengan permintaan autentikasi ke IAM. Produsen API perlu memperbaiki error ini berdasarkan detail dalam respons error. |
steps.verifyiam.Unauthorized |
401 |
Masalah dengan kredensial, seperti nilai yang tidak valid atau sudah tidak berlaku. |
steps.verifyiam.UnexpectedAuthorizationInfrastructureError |
500 |
Error internal. |
Error saat deployment
Kebijakan ini tidak menampilkan error deployment khusus kebijakan.
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error saat runtime.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name="Unauthorized" |
verifyiam.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | verifyiam.Verify-IAMToken.failed = true |
Kebijakan VerifyJWS
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Terjadi saat |
---|---|---|
steps.jws.AlgorithmInTokenNotPresentInConfiguration |
401 |
Terjadi saat kebijakan verifikasi memiliki beberapa algoritma |
steps.jws.AlgorithmMismatch |
401 |
Algoritma yang ditentukan di header oleh kebijakan Generate tidak cocok dengan algoritma yang diharapkan dalam
kebijakan Verify . Algoritma yang ditentukan harus cocok. |
steps.jws.ContentIsNotDetached |
401 |
<DetachedContent> ditentukan jika JWS tidak berisi
payload konten yang terpisah. |
steps.jws.FailedToDecode |
401 |
Kebijakan tidak dapat mendekode JWS. JWS mungkin rusak. |
steps.jws.InsufficientKeyLength |
401 |
Untuk kunci kurang dari 32 byte untuk algoritma HS256 |
steps.jws.InvalidClaim |
401 |
Untuk klaim yang tidak ada atau ketidakcocokan klaim, atau header yang tidak ada atau ketidakcocokan header. |
steps.jws.InvalidCurve |
401 |
Kurva yang ditentukan oleh kunci tidak valid untuk algoritma Elliptic Curve. |
steps.jws.InvalidJsonFormat |
401 |
JSON tidak valid ditemukan di header JWS. |
steps.jws.InvalidJws |
401 |
Error ini terjadi saat verifikasi tanda tangan JWS gagal. |
steps.jws.InvalidPayload |
401 |
Payload JWS tidak valid. |
steps.jws.InvalidSignature |
401 |
<DetachedContent> dihilangkan dan JWS memiliki payload konten yang terpisah. |
steps.jws.KeyIdMissing |
401 |
Kebijakan Verify menggunakan JWKS sebagai sumber untuk kunci publik, tetapi JWS yang ditandatangani tidak
menyertakan properti kid di header. |
steps.jws.KeyParsingFailed |
401 |
Kunci publik tidak dapat diuraikan dari informasi kunci yang diberikan. |
steps.jws.MissingPayload |
401 |
Payload JWS tidak ada. |
steps.jws.NoAlgorithmFoundInHeader |
401 |
Terjadi saat JWS menghilangkan header algoritma. |
steps.jws.NoMatchingPublicKey |
401 |
Kebijakan Verify menggunakan JWKS sebagai sumber kunci publik, tetapi kid
dalam JWS yang ditandatangani tidak tercantum dalam JWKS. |
steps.jws.UnhandledCriticalHeader |
401 |
Header yang ditemukan oleh kebijakan Verifikasi JWS di header crit tidak
tercantum dalam KnownHeaders . |
steps.jws.UnknownException |
401 |
Terjadi pengecualian yang tidak diketahui. |
steps.jws.WrongKeyType |
401 |
Jenis kunci yang ditentukan salah. Misalnya, jika Anda menentukan kunci RSA untuk algoritma Elliptic Curve, atau kunci kurva untuk algoritma RSA. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Terjadi saat |
---|---|
InvalidAlgorithm |
Satu-satunya nilai yang valid adalah: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512,
HS256, HS384, HS512 . |
|
Kemungkinan error deployment lainnya. |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "TokenExpired" |
JWS.failed |
Semua kebijakan JWS menetapkan variabel yang sama jika terjadi kegagalan. | jws.JWS-Policy.failed = true |
Contoh respons error
Untuk penanganan error, praktik terbaiknya adalah menangkap bagian errorcode
dari respons error. Jangan mengandalkan teks di faultstring
, karena teks tersebut dapat berubah.
Contoh aturan error
<FaultRules> <FaultRule name="JWS Policy Errors"> <Step> <Name>JavaScript-1</Name> <Condition>(fault.name Matches "TokenExpired")</Condition> </Step> <Condition>JWS.failed=true</Condition> </FaultRule> </FaultRules>
Kebijakan VerifyJWT
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Terjadi saat |
---|---|---|
steps.jwt.AlgorithmInTokenNotPresentInConfiguration |
401 |
Terjadi saat kebijakan verifikasi memiliki beberapa algoritma. |
steps.jwt.AlgorithmMismatch |
401 |
Algoritma yang ditentukan dalam kebijakan Generate tidak cocok dengan algoritma yang diharapkan dalam
kebijakan Verify . Algoritma yang ditentukan harus cocok. |
steps.jwt.FailedToDecode |
401 |
Kebijakan tidak dapat mendekode JWT. JWT mungkin rusak. |
steps.jwt.GenerationFailed |
401 |
Kebijakan tidak dapat membuat JWT. |
steps.jwt.InsufficientKeyLength |
401 |
Untuk kunci kurang dari 32 byte untuk algoritma HS256, kurang dari 48 byte untuk algoritma HS386, dan kurang dari 64 byte untuk algoritma HS512. |
steps.jwt.InvalidClaim |
401 |
Untuk klaim yang tidak ada atau ketidakcocokan klaim, atau header yang tidak ada atau ketidakcocokan header. |
steps.jwt.InvalidConfiguration |
401 |
Elemen <Algorithm> dan <Algorithms>
ada. |
steps.jwt.InvalidCurve |
401 |
Kurva yang ditentukan oleh kunci tidak valid untuk algoritma Elliptic Curve. |
steps.jwt.InvalidIterationCount |
401 |
Jumlah iterasi yang digunakan dalam JWT terenkripsi tidak sama dengan jumlah iterasi yang ditentukan dalam konfigurasi kebijakan VerifyJWT. Hal ini hanya berlaku untuk JWT yang
menggunakan <PasswordKey> . |
steps.jwt.InvalidJsonFormat |
401 |
JSON tidak valid ditemukan di header atau payload. |
steps.jwt.InvalidKeyConfiguration |
401 |
JWKS dalam elemen <PublicKey> tidak valid. Alasannya
mungkin karena endpoint URI JWKS tidak dapat dijangkau dari instance Apigee. Uji konektivitas ke endpoint dengan membuat proxy passthrough dan menggunakan endpoint JWKS sebagai target. |
steps.jwt.InvalidSaltLength |
401 |
Panjang salt yang digunakan dalam JWT terenkripsi tidak sama dengan panjang salt yang ditentukan dalam konfigurasi kebijakan VerifyJWT. Hal ini hanya berlaku untuk JWT yang
menggunakan <PasswordKey> . |
steps.jwt.InvalidPasswordKey |
401 |
Kunci yang ditentukan tidak memenuhi persyaratan. |
steps.jwt.InvalidPrivateKey |
401 |
Kunci yang ditentukan tidak memenuhi persyaratan. |
steps.jwt.InvalidPublicKey |
401 |
Kunci yang ditentukan tidak memenuhi persyaratan. |
steps.jwt.InvalidSecretKey |
401 |
Kunci yang ditentukan tidak memenuhi persyaratan. |
steps.jwt.InvalidToken |
401 |
Error ini terjadi saat verifikasi tanda tangan JWT gagal. |
steps.jwt.JwtAudienceMismatch |
401 |
Klaim audiens gagal dalam verifikasi token. |
steps.jwt.JwtIssuerMismatch |
401 |
Klaim penerbit gagal dalam verifikasi token. |
steps.jwt.JwtSubjectMismatch |
401 |
Klaim subjek gagal dalam verifikasi token. |
steps.jwt.KeyIdMissing |
401 |
Kebijakan Verify menggunakan JWKS sebagai sumber kunci publik, tetapi JWT yang ditandatangani tidak
menyertakan properti kid di header. |
steps.jwt.KeyParsingFailed |
401 |
Kunci publik tidak dapat diuraikan dari informasi kunci yang diberikan. |
steps.jwt.NoAlgorithmFoundInHeader |
401 |
Terjadi saat JWT tidak berisi header algoritma. |
steps.jwt.NoMatchingPublicKey |
401 |
Kebijakan Verify menggunakan JWKS sebagai sumber untuk kunci publik, tetapi kid
dalam JWT yang ditandatangani tidak tercantum dalam JWKS. |
steps.jwt.SigningFailed |
401 |
Di GenerateJWT, untuk kunci yang kurang dari ukuran minimum untuk algoritma HS384 atau HS512 |
steps.jwt.TokenExpired |
401 |
Kebijakan ini mencoba memverifikasi token yang sudah tidak berlaku. |
steps.jwt.TokenNotYetValid |
401 |
Token belum valid. |
steps.jwt.UnhandledCriticalHeader |
401 |
Header yang ditemukan oleh kebijakan Verifikasi JWT di header crit tidak
tercantum dalam KnownHeaders . |
steps.jwt.UnknownException |
401 |
Terjadi pengecualian yang tidak diketahui. |
steps.jwt.WrongKeyType |
401 |
Jenis kunci yang ditentukan salah. Misalnya, jika Anda menentukan kunci RSA untuk algoritma Elliptic Curve, atau kunci kurva untuk algoritma RSA. |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidNameForAdditionalClaim |
Deployment akan gagal jika klaim yang digunakan di elemen turunan <Claim>
dari elemen <AdditionalClaims> adalah salah satu nama terdaftar berikut:
kid , iss , sub , aud , iat ,
exp , nbf , atau jti .
|
build |
InvalidTypeForAdditionalClaim |
Jika klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims> bukan dari jenis string , number ,
boolean , atau map , deployment akan gagal.
|
build |
MissingNameForAdditionalClaim |
Jika nama klaim tidak ditentukan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims> , deployment akan gagal.
|
build |
InvalidNameForAdditionalHeader |
Error ini terjadi saat nama klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims> adalah alg atau typ .
|
build |
InvalidTypeForAdditionalHeader |
Jika jenis klaim yang digunakan dalam elemen turunan <Claim>
dari elemen <AdditionalClaims> bukan dari jenis string , number ,
boolean , atau map , deployment akan gagal.
|
build |
InvalidValueOfArrayAttribute |
Error ini terjadi jika nilai atribut array di elemen turunan <Claim>
dari elemen <AdditionalClaims> tidak ditetapkan ke true atau false .
|
build |
InvalidValueForElement |
Jika nilai yang ditentukan dalam elemen <Algorithm> bukan nilai yang didukung, deployment akan gagal.
|
build |
MissingConfigurationElement |
Error ini akan terjadi jika elemen <PrivateKey> tidak digunakan dengan algoritma keluarga RSA atau elemen <SecretKey> tidak digunakan dengan algoritma Keluarga
HS.
|
build |
InvalidKeyConfiguration |
Jika elemen turunan <Value> tidak ditentukan dalam elemen <PrivateKey>
atau <SecretKey> , deployment akan gagal.
|
build |
EmptyElementForKeyConfiguration |
Jika atribut ref dari elemen turunan <Value> dari elemen <PrivateKey>
atau <SecretKey> kosong atau tidak ditentukan, deployment akan gagal.
|
build |
InvalidConfigurationForVerify |
Error ini terjadi jika elemen <Id> ditentukan dalam
elemen <SecretKey> .
|
build |
InvalidEmptyElement |
Error ini terjadi jika elemen <Source> kebijakan Verifikasi JWT
kosong. Jika ada, variabel ini harus ditentukan dengan nama variabel alur Apigee.
|
build |
InvalidPublicKeyValue |
Jika nilai yang digunakan dalam elemen turunan <JWKS> dari elemen <PublicKey>
tidak menggunakan format yang valid seperti yang ditentukan dalam RFC 7517,
deployment akan gagal.
|
build |
InvalidConfigurationForActionAndAlgorithm |
Jika elemen <PrivateKey> digunakan dengan algoritma Keluarga HS atau
elemen <SecretKey> digunakan dengan algoritma Keluarga RSA, deployment
akan gagal.
|
build |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "InvalidToken" |
JWT.failed |
Semua kebijakan JWT menetapkan variabel yang sama jika terjadi kegagalan. | JWT.failed = true |
Contoh respons error
Untuk penanganan error, praktik terbaiknya adalah menangkap bagian errorcode
dari respons error. Jangan mengandalkan teks di faultstring
, karena teks tersebut dapat berubah.
Contoh aturan error
<FaultRules> <FaultRule name="JWT Policy Errors"> <Step> <Name>JavaScript-1</Name> <Condition>(fault.name Matches "InvalidToken")</Condition> </Step> <Condition>JWT.failed=true</Condition> </FaultRule> </FaultRules>
Kebijakan XMLThreatProtection
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.xmlthreatprotection.ExecutionFailed |
500 |
Kebijakan XMLThreatProtection dapat menampilkan berbagai jenis error ExecutionFailed .
Sebagian besar error ini terjadi saat batas tertentu yang ditetapkan dalam kebijakan terlampaui. Jenis error ini mencakup:
panjang nama elemen,
jumlah turunan,
kedalaman node,
jumlah atribut,
panjang nama atribut,
dan banyak lagi. Anda dapat melihat daftar lengkapnya di topik pemecahan masalah error runtime kebijakan XMLThreatProtection.
|
build |
steps.xmlthreatprotection.InvalidXMLPayload |
500 |
Error ini terjadi jika payload pesan input yang ditentukan oleh elemen <Source> kebijakan XMLThreatProtection bukan Dokumen XML yang valid.
|
build |
steps.xmlthreatprotection.SourceUnavailable |
500 |
Error ini terjadi jika variabel message
yang ditentukan dalam elemen <Source> adalah:
|
build |
steps.xmlthreatprotection.NonMessageVariable |
500 |
Error ini terjadi jika elemen <Source> ditetapkan ke variabel yang
bukan dari jenis
message.
|
build |
Error saat deployment
Tidak ada.
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name Matches "SourceUnavailable" |
xmlattack.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | xmlattack.XPT-SecureRequest.failed = true |
Contoh respons error
{ "fault": { "faultstring": "XMLThreatProtection[XPT-SecureRequest]: Execution failed. reason: XMLThreatProtection[XTP-SecureRequest]: Exceeded object entry name length at line 2", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Contoh aturan error
<FaultRule name="XML Threat Protection Policy Faults"> <Step> <Name>AM-CustomErrorResponse</Name> <Condition>(fault.name Matches "ExecutionFailed") </Condition> </Step> <Condition>(xmlattack.XPT-SecureRequest.failed = true) </Condition> </FaultRule>
Kebijakan XMLtoJSON
Bagian ini menjelaskan kode error dan pesan error yang ditampilkan serta variabel error yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika Anda mengembangkan aturan error untuk menangani error. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.xmltojson.ExecutionFailed |
ExecutionFailed |
Error ini terjadi jika payload input (XML) kosong atau XML input tidak valid atau salah format. | build |
steps.xmltojson.InCompatibleTypes |
ExecutionFailed |
Error ini terjadi jika jenis variabel yang ditentukan dalam elemen <Source> dan elemen <OutputVariable> tidak sama. Jenis variabel yang
terdapat dalam elemen <Source> dan elemen <OutputVariable> harus cocok.
|
build |
steps.xmltojson.InvalidSourceType |
ExecutionFailed |
Error ini terjadi jika jenis variabel yang digunakan untuk menentukan elemen <Source> tidak valid.Jenis variabel yang valid adalah pesan dan string. |
build |
steps.xmltojson.OutputVariableIsNotAvailable |
ExecutionFailed |
Error ini terjadi jika variabel yang ditentukan dalam elemen <Source> kebijakan XML ke JSON berjenis string dan elemen <OutputVariable> tidak ditentukan.
Elemen <OutputVariable> bersifat wajib jika variabel yang ditentukan dalam elemen <Source>
berjenis string. |
build |
steps.xmltojson.SourceUnavailable |
ExecutionFailed |
Error ini terjadi jika variabel message
yang ditentukan dalam elemen <Source> kebijakan XML ke JSON adalah:
|
build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
EitherOptionOrFormat |
Jika salah satu elemen <Options> atau <Format> tidak dideklarasikan dalam Kebijakan XML ke JSON, deployment proxy API akan gagal.
|
build |
UnknownFormat |
Jika elemen <Format> dalam kebijakan XML ke JSON memiliki format yang tidak diketahui, deployment proxy API akan gagal. Format standar mencakup:
xml.com , yahoo , google , dan badgerFish .
|
build |
Variabel error
Variabel ini ditetapkan saat error runtime terjadi. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel Runtime errors di atas. Nama error adalah bagian terakhir dari kode error. | fault.name = "SourceUnavailable" |
xmltojson.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | xmltojson.XMLtoJSON-1.failed = true |
Contoh respons error
{ "fault": { "faultstring": "XMLToJSON[XMLtoJSON-1]: Source xyz is not available", "detail": { "errorcode": "steps.xml2json.SourceUnavailable" } } }
Contoh aturan error
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="XML to JSON Faults"> <Step> <Name>AM-SourceUnavailableMessage</Name> <Condition>(fault.name Matches "SourceUnavailable") </Condition> </Step> <Step> <Name>AM-BadXML</Name> <Condition>(fault.name = "ExecutionFailed")</Condition> </Step> <Condition>(xmltojson.XMLtoJSON-1.failed = true) </Condition> </FaultRule>
Kebijakan XSLTransform
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kerusakan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
steps.xsl.XSLSourceMessageNotAvailable |
500 |
Error ini terjadi jika variabel pesan atau string yang ditentukan dalam elemen <Source> dari
kebijakan XSLTransform berada di luar cakupan (tidak tersedia dalam alur tertentu tempat
kebijakan dijalankan) atau tidak dapat di-resolve (tidak ditentukan).
|
build |
steps.xsl.XSLEvaluationFailed |
500 |
Error ini terjadi jika payload XML input tidak tersedia/salah format atau kebijakan XSLTransform gagal/tidak dapat mengubah file XML input berdasarkan aturan transformasi yang disediakan dalam file XSL. Kegagalan kebijakan XSLTransform dapat disebabkan oleh berbagai hal. Alasan kegagalan dalam pesan error akan memberikan informasi lebih lanjut tentang penyebabnya. | build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
XSLEmptyResourceUrl |
Jika elemen <ResourceURL> dalam kebijakan XSLTransform kosong, deployment proxy API akan gagal. |
build |
XSLInvalidResourceType |
Jika jenis resource yang ditentukan dalam elemen <ResourceURL> kebijakan XSLTransform
bukan dari jenis xsl , deployment proxy API akan gagal. |
build |