شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید . اطلاعات
نام نامعتبربرایادعای اضافی
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Invalid name for additional claim : policy(policy_name) claim(claim_name).
مثال پیام خطا
Error Saving Revision 2
Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که نام claim استفاده شده در عنصر فرزند <Claim> از عنصر <AdditionalClaims> یکی از نامهای ثبت شده زیر باشد:
"بچه"، "iss"، "sub"، "aud"، "iat"، "exp"، "nbf"، "jti"
ادعاهای ثبتشده در RFC7519 مشخص شدهاند.
برای مثال، استفاده از نام ادعا iss در زیر عنصر <AdditionalClaims> منجر به این خطا خواهد شد.
تشخیص
نام سیاست Generate JWT و نام ادعا را از پیام خطا مشخص کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256و نام ادعاissاست:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).تأیید کنید که نام ادعا (Claim) استفاده شده در عنصر
<AdditionalClaims>در XML مربوط به Generate JWT policy ناموفق، با نام ادعا (Claim) شناسایی شده در پیام خطا (مرحله 1 در بالا) مطابقت داشته باشد. برای مثال، سیاست زیر ادعا را به صورتissمشخص میکند که با آنچه در پیام خطا آمده است، مطابقت دارد:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name="iss"/> </AdditionalClaims> </GenerateJWT>اگر نام ادعا (Claim) استفاده شده در عنصر فرزند
<Claim>از عنصر<AdditionalClaims>یکی از نامهای ثبتشدهی زیر باشد:"بچه"، "iss"، "sub"، "aud"، "iat"، "exp"، "nbf"، "jti"
پس علت خطا همینه.
در مثال Generate JWT policy که در بالا نشان داده شده است، نام
<Claim>در زیر عنصر<AdditionalClaims>به صورتissمشخص شده است که منجر به خطای زیر میشود:Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
وضوح تصویر
از هیچ یک از نامهای ثبتشدهی "kid"، "iss"، "sub"، "aud"، "iat"، "exp"، "nbf" یا "jti" در عنصر فرزند <Claim> از عنصر <AdditionalClaims> استفاده نکنید.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، نام claim را به status تغییر دهید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='status' type='string'>Development</Claim>
</AdditionalClaims>
</GenerateJWT>
نوع نامعتبربرایادعای اضافی
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Invalid type for additional claim : policy(policy_name) claim(claim_name) type(type_name).
مثال پیام خطا
Error Saving Revision 2
Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که نوع ادعای استفاده شده در عنصر فرزند <Claim> از عنصر <AdditionalClaims> از سیاست GenerateJWT یکی از انواع زیر نباشد:
string (پیشفرض)، number ، boolean یا map
برای مثال، استفاده از نوع ادعایی integer در زیر عنصر <AdditionalClaims> منجر به خطا خواهد شد.
تشخیص
نام سیاست Generate JWT، نام ادعا (Claim) و نوع ادعا (Claim) را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256، نام ادعا،claimو نوع ادعا،integerاست:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).تأیید کنید که نام ادعا و نوع استفاده شده در عنصر
<AdditionalClaims>در XML ناموفق Generate JWT policy با نام و نوع ادعا که در پیام خطا در مرحله 1 مشخص شده است، مطابقت داشته باشد. برای مثال، سیاست زیر ادعا را به عنوانclaimو نوع آن را به عنوانintegerمشخص میکند که با آنچه در پیام خطا آمده است، مطابقت دارد:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='integer'/> </AdditionalClaims> </GenerateJWT>اگر نوع ادعای استفاده شده در عنصر فرزند
<Claim>از عنصر<AdditionalClaims>یکی از انواع زیر نباشد:string(پیشفرض)،number،booleanیاmapپس علت خطا همینه.
در مثال Generate JWT policy که در بالا نشان داده شده است، نوع
<Claim>در زیر عنصر<AdditionalClaims>به صورتintegerمشخص شده است. از آنجا کهintegerیک نوع پشتیبانی شده نیست، با خطای زیر مواجه میشوید:Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
وضوح تصویر
مطمئن شوید که فقط از انواع دادهی پشتیبانیشده مانند string ، number ، boolean یا map در عنصر فرزند <Claim> از عنصر <AdditionalClaims> استفاده شده باشد.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، نوع Claim را به boolean تغییر دهید.
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalClaims>
</GenerateJWT>
MissingNameForAdditionalClaim
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Error occurred while validation of bean(policy_name.xml) Reason: - Required attribute name is missing in Claim.
مثال پیام خطا
Error Saving Revision 2
Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که نام ادعا (Claim) در عنصر فرزند <Claim> از عنصر <AdditionalClaims> یا <AdditionalHeaders> مشخص نشده باشد.
تشخیص
نام سیاست Generate JWT را از پیام خطا تشخیص دهید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256است:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claimخطمشی XML ناموفق Generate JWT را بررسی کنید و بررسی کنید که آیا نام ادعا در عنصر فرزند
<Claims>در زیر عنصر<AdditionalClaims>یا<AdditionalHeaders>وجود ندارد یا خیر. برای مثال، خطمشی Generate JWT زیر، نام ادعا را در زیر عنصر<AdditionalClaims>مشخص نمیکند:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim ref='reqclaim' type='boolean'/> </AdditionalClaims> </GenerateJWT>از آنجا که نام
<Claim>در زیر عنصر<AdditionalClaims>مشخص نشده است، با خطای زیر مواجه میشوید:Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
وضوح تصویر
مطمئن شوید که نام ادعا (Claim) همیشه در عنصر فرزند <Claim> از عنصر <AdditionalClaims> یا <AdditionalHeaders> مشخص شده باشد.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، نام claim را مطابق شکل زیر مشخص کنید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalClaims>
</GenerateJWT>
نام نامعتبربرای سربرگ اضافی
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Invalid name for additional header : policy(policy_name)header(header_name).
مثال پیام خطا
Error Saving Revision 2
Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که نام claim استفاده شده در عنصر فرزند <Claim> از عنصر <AdditionalHeaders> یکی از هدرهای استاندارد JWT زیر باشد:
alg یا typ
برای مثال، استفاده از نام claim به نام alg در زیر عنصر <AdditionalHeaders> باعث بروز خطا خواهد شد.
تشخیص
نام سیاست Generate JWT و نام هدر را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256و نام هدر،algاست:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).تأیید کنید که نام هدر استفاده شده در عنصر فرزند
<Claim>در زیر عنصر<AdditionalHeaders>در XML مربوط به Generate JWT policy ناموفق، با نام هدر شناسایی شده در پیام خطا در مرحله 1 مطابقت داشته باشد. برای مثال، سیاست زیر هدر را به صورتalgمشخص میکند که با آنچه در پیام خطا آمده است مطابقت دارد:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalHeaders> <Claim name="alg"/> </AdditionalHeaders> </GenerateJWT>اگر نام هدر استفاده شده در عنصر فرزند
<Claim>از عنصر<AdditionalClaims>یکی از هدرهای استاندارد JWT زیر باشد:algیاtypپس علت خطا همینه.
در مثال Generate JWT policy که در بالا نشان داده شده است، نام
<Claim>به صورتalgدر زیر عنصر<AdditionalClaims>مشخص شده است که منجر به خطای زیر میشود:Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
وضوح تصویر
alg یا typ هدرهای استاندارد JWT در عنصر فرزند <Claim> از عنصر <AdditionalHeaders> استفاده نکنید.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، از نام x5c در عنصر فرزند <Claim> از عنصر <AdditionalHeaders> استفاده کنید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='x5c'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidTypeForAdditionalHeader
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Invalid type for additional header : policy(policy_name) claim(claim_name) type(type_name).
مثال پیام خطا
Error Saving Revision 2
Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim1) type(integer).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که نوع ادعای استفاده شده در عنصر فرزند <Claim> از عنصر <AdditionalHeaders> از سیاست GenerateJWT یکی از انواع زیر نباشد:
string (پیشفرض)، number ، boolean یا map .
برای مثال، استفاده از نوع ادعایی integer در زیر عنصر <AdditionalHeaders> باعث بروز خطا خواهد شد.
تشخیص
نام سیاست Generate JWT، نام ادعا (Claim) و نوع ادعا (Claim) را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256، نام ادعاclaim,و نوع ادعاinteger:Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).تأیید کنید که نام ادعا و نوع ادعا استفاده شده در عنصر
<AdditionalClaims>در XML ناموفق Generate JWT policy با نام ادعا و نوع ادعا که در پیام خطا در مرحله 1 مشخص شده است، مطابقت داشته باشد. برای مثال، سیاست زیر ادعا را به عنوانclaimو نوع ادعا را به عنوانintegerمشخص میکند که با آنچه در پیام خطا آمده است، مطابقت دارد:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalHeaders> <Claim name='claim' ref='reqclaim' type='integer'/> </AdditionalHeaders> </GenerateJWT>اگر نوع ادعای استفاده شده در عنصر فرزند
<Claim>از عنصر<AdditionalHeaders>یکی از انواع زیر نباشد:string(پیشفرض)،number،booleanیاmapپس علت خطا همینه.
در مثال Generate JWT policy که در بالا نشان داده شده است، نوع
<Claim>در زیر عنصر<AdditionalHeaders>به صورتintegerمشخص شده است. از آنجا کهintegerیک نوع پشتیبانی شده نیست، با خطای زیر مواجه میشوید:Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
وضوح تصویر
مطمئن شوید که فقط از انواع دادهی پشتیبانیشدهی string ، number ، boolean یا map در عنصر فرزند <Claim> از عنصر <AdditionalHeaders> استفاده شده باشد.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، نوع Claim را به boolean تغییر دهید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='boolean'/>
</AdditionalHeaders>
</GenerateJWT>
ویژگی مقدار نامعتبر آرایه
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Invalid value for array attribute: policy(policy_name)claim(claim_name).
مثال پیام خطا
Error Saving Revision 2
Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که مقدار ویژگی آرایه در عنصر فرزند <Claim> از عنصر <AdditionalClaims> یا <AdditionalHeaders> روی true یا false تنظیم نشده باشد.
برای مثال، تنظیم مقدار ویژگی آرایه به صورت yes در عنصر فرزند <Claim> از <AdditionalClaims> یا <AdditionalHeaders> باعث ایجاد خطا میشود.
تشخیص
نام سیاست Generate JWT و نام ادعا را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256و نام ادعا،claim:Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).تأیید کنید که نام ادعا (Claim) استفاده شده در عنصر فرزند
<Claim>در زیر عنصر<AdditionalHeaders>در XML مربوط به Generate JWT policy ناموفق، با نام ادعای شناسایی شده در پیام خطا در مرحله 1 مطابقت داشته باشد. برای مثال، سیاست زیر نام ادعا راclaimمشخص میکند که با آنچه در پیام خطا آمده است، مطابقت دارد:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='yes'/> </AdditionalClaims> </GenerateJWT>اگر مقدار ویژگی
arrayدر عنصر فرزند<Claim>از عنصر<AdditionalClaims>رویtrueیاfalseتنظیم نشده باشد، علت خطا همین است.از آنجا که در مثال بالا، ویژگی
arrayدر عنصر فرزند<Claim>از عنصر<AdditionalClaims>رویyesتنظیم شده است، با خطای زیر مواجه میشوید:Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
وضوح تصویر
مطمئن شوید که مقدار ویژگی آرایه در عنصر فرزند <Claim> از <AdditionalClaims> یا <AdditionalHeaders> روی true یا false تنظیم شده باشد.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، مقدار ویژگی array را به true تغییر دهید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
پیکربندی نامعتبر برای اقدام و الگوریتم
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2
Invalid configuration element for this action and algorithm Family: policy(<var>policy_name</var>) element(<var>element_name</var>) action(<var>action_name</var>) family(<var>family_name</var>).
مثال پیام خطا
Error Saving Revision 2 Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا در صورتی رخ میدهد که عنصر <PrivateKey> با الگوریتمهای خانواده HS و عنصر <SecretKey> با الگوریتمهای خانواده RSA استفاده شود. همچنین در صورت درست بودن هر یک از این شرایط، این خطا رخ خواهد داد.
برای مثال، استفاده از عنصر <PrivateKey> با الگوریتمهای HS Family منجر به این خطا میشود.
تشخیص
نام سیاست Generate JWT، نام عنصر و نام خانواده الگوریتم را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر نام سیاست Generate JWT،
JWT-Generate-HS256، نام عنصر،PrivateKeyو خانواده الگوریتم،HMACاست:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).تأیید کنید که عنصر و خانواده الگوریتم استفاده شده در سیاست ناموفق Generate JWT XML با عنصر و خانواده الگوریتم شناسایی شده در پیام خطا در مرحله 1 مطابقت دارد. برای مثال، سیاست زیر عنصر را به عنوان
PrivateKeyو خانواده الگوریتم را به عنوانHMACمشخص میکند که با آنچه در پیام خطا آمده است مطابقت دارد:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <PrivateKey> <Password ref="private.privatekey-password"/> </PrivateKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array=tuu =/> </AdditionalClaims> </GenerateJWT>اگر مقدار عنصر
<Algorithm>HS256باشد، اما شما از<PrivateKey>استفاده کرده باشید، پس علت خطا همین است.در مثال Generate JWT policy که در بالا نشان داده شده است،
<PrivateKey>با وجود اینکه<PrivateKey>روی یک الگوریتم خانوادگی،HS256، تنظیم شده است، استفاده میشود و منجر به خطای زیر میشود:Invalid configuration element for this action and algorithm Family: policy(JWT-Generate-HS256) element(PrivateKey) action(Generate) family(HMAC).
وضوح تصویر
مطمئن شوید که عنصر <PrivateKey> فقط با الگوریتمهای خانواده RSA و عنصر <SecretKey> فقط با الگوریتمهای خانواده HS استفاده میشود.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، از <SecretKey> از policy GenerateJWT که از الگوریتم HS256 استفاده میکند، استفاده کنید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
مقدار نامعتبربرای عنصر
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Invalid Value for element : policy(policy_name) element(element_name).
مثال پیام خطا
Error Saving Revision 2
Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که مقدار مشخص شده در عنصر <Algorithm> یکی از مقادیر زیر نباشد:
HS256 ، HS384 ، HS512 ، RS256 ، RS384 ، RS512
برای مثال، مشخص کردن مقدار الگوریتم به صورت RS128 در عنصر <Algorithm> منجر به این خطا میشود.
تشخیص
نام سیاست Generate JWT و نام عنصر را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256و نام عنصر،Algorithm.Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).فایل XML مربوط به Generate JWT policy را که با شکست مواجه شده است، بررسی کنید و مقدار مشخص شده برای عنصر
<Algorithm>را بررسی کنید.در اینجا یک نمونه از سیاست Generate JWT آورده شده است:
<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS128</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='status' type='string'>Development</Claim> </AdditionalClaims> </GenerateJWT>مقدار مشخص شده در عنصر
<Algorithm>را بررسی کنید. اگر یکی از مقادیر زیر نبود:HS256،HS384،HS512،RS256،RS384،RS512پس علت خطا همینه.
در مثال Generate JWT policy که در بالا نشان داده شده است، نام
<Algorithm>به صورتHS128مشخص شده است. از آنجا که این یک الگوریتم پشتیبانی شده نیست، با خطای زیر مواجه میشوید:Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
وضوح تصویر
مطمئن شوید که مقدار مشخص شده در عنصر <Algorithm> یکی از مقادیر پشتیبانی شده باشد:
HS256 ، HS384 ، HS512 ، RS256 ، RS384 ، RS512
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است و از عنصر <SecretKey> استفاده میکند، مقدار <Algorithm> را به HS25 تغییر دهید. توجه داشته باشید، وقتی از عنصر <SecretKey> استفاده میشود، فقط میتوانید از الگوریتمهای خانواده HS استفاده کنید.
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalClaims>
<Claim name='status' type='string'>Development</Claim>
</AdditionalClaims>
</GenerateJWT>
عنصر پیکربندی گمشده
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Missing configuration element : policy(policy_name) element(element_name).
مثال پیام خطا
Error Saving Revision 2
Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که عنصر <PrivateKey> با الگوریتمهای خانواده RSA در سیاست Generate JWT استفاده نشود . به همین ترتیب، اگر عنصر <SecretKey> با الگوریتمهای خانواده HS در سیاست Generate JWT استفاده نشود ، این خطا میتواند رخ دهد.
برای مثال، عدم استفاده از عنصر <PrivateKey> با الگوریتمهای خانواده RSA منجر به این خطا میشود.
تشخیص
نام سیاست Generate JWT و نام عنصر گمشده را از پیام خطا مشخص کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256و نام عنصر گمشده،SecretKeyاست.Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).فایل XML مربوط به Generate JWT policy را که با خطا مواجه شده است، بررسی کنید و مطمئن شوید که عنصری که در پیام خطا نشان داده شده است، وجود ندارد. اگر وجود ندارد، پس علت خطا همین است.
برای مثال، در سیاست زیر،
SecretKeyوجود ندارد وAlgorithmمورد استفادهHS256است:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>مثال Generate JWT policy از الگوریتمهای HS Family استفاده میکند، اما عنصر اجباری
SecretKeyوجود ندارد و منجر به خطای زیر میشود:Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
وضوح تصویر
مطمئن شوید که عنصر اجباری <PrivateKey> با الگوریتمهای خانواده RSA و عنصر اجباری <SecretKey> با الگوریتمهای خانواده HS استفاده میشود.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است و از الگوریتم HS256 استفاده میکند، عنصر <SecretKey> را به Generate JWT policy اضافه کنید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
پیکربندی کلید نامعتبر
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving RevisionInvalid Key configuration : policy(policy_name).
مثال پیام خطا
Error Saving Revision 3
Invalid Key configuration : policy(JWT-Generate-HS256).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که عنصر فرزند اجباری <Value> در عناصر <PrivateKey> یا <SecretKey> در سیاست Generate JWT تعریف نشده باشد.
تشخیص
نام سیاست Generate JWT را از پیام خطا تشخیص دهید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256است.Invalid Key configuration : policy(JWT-Generate-HS256).خطمشی XML مربوط به Generate JWT را که با شکست مواجه شده است، بررسی کنید و بررسی کنید که آیا عنصر فرزند
<Value>در عناصر<PrivateKey>یا<SecretKey>تعریف نشده است یا خیر. اگر<Value>تعریف نشده باشد، دلیل خطا همین است.برای مثال، در سیاست زیر، عنصر فرزند
<Value>در عنصر<SecretKey>تعریف نشده است:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> </SecretKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>از آنجا که عنصر فرزند
<Value>در عنصر<SecretKey>از سیاست Generate JWT تعریف نشده است، با خطای زیر مواجه میشوید:Invalid Key configuration : policy(JWT-Generate-HS256).
وضوح تصویر
مطمئن شوید که عنصر فرزند <Value> همیشه در عناصر <PrivateKey> یا <SecretKey> از سیاست Generate JWT تعریف شده باشد.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، عنصر فرزند <Value> را زیر عنصر <SecretKey> مطابق شکل زیر تعریف کنید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
پیکربندی عنصر خالی برای کلید
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Empty Element for Key Configuration : policy(policy_name) element(element_name).
مثال پیام خطا
Error Saving Revision 2
Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که ویژگی ref در عنصر فرزند <Value> از عناصر <PrivateKey> یا <SecretKey> مشخص نشده یا خالی باشد.
برای مثال، اگر عنصر فرزند <Value> از عنصر <SecretKey> خالی باشد، خطا رخ میدهد.
تشخیص
نام سیاست Generate JWT و نام عنصر خالی را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256و نام عنصر خالی،SecretKey/Valueاست.Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).خطمشی XML مربوط به Generate JWT را که با شکست مواجه شده است، بررسی کنید و بررسی کنید که آیا عنصر شناساییشده در مرحله ۱ خالی است یا خیر. اگر خالی باشد، علت خطا همین است.
برای مثال، سیاست زیر نشان میدهد که عنصر فرزند
<Value>از عنصر<SecretKey>خالی است:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> <Value/> <Id>1918290</Id> </SecretKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>از آنجا که عنصر فرزند
<Value>از عنصر<SecretKey>در سیاست Generate JWT خالی است، با خطای زیر مواجه میشوید:Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
وضوح تصویر
مطمئن شوید که ویژگی ref در عنصر فرزند <Value> از عناصر <PrivateKey> یا <SecretKey> همیشه مشخص شده و دارای پیشوند " private. " باشد.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، از متغیر جریان private.privatekey در عنصر فرزند <Value> از عنصر <SecretKey> استفاده کنید.
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
نام متغیر نامعتبربرای رمز
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Invalid variable name for secret : policy(policy_name) element(element_name).
مثال پیام خطا
Error Saving Revision 2
Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که نام متغیر جریان مشخص شده در ویژگی ref در عنصر فرزند <Value> از عناصر <PrivateKey> یا <SecretKey> شامل پیشوند private ( private. ) نباشد.
برای مثال:
اگر نام متغیر جریان در ویژگی ref عنصر فرزند <Value> از عنصر <PrivateKey> به عنوان mykey مشخص شده باشد، این خطا رخ میدهد.
تشخیص
نام سیاست Generate JWT و نام عنصری که نام متغیر نامعتبر دارد را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256و نام عنصرSecretKey/Valueاست.Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).فایل XML مربوط به Generate JWT policy را که با شکست مواجه شده است، بررسی کنید و نام متغیر استفاده شده در عنصر شناسایی شده در مرحله 1 را تأیید کنید. اگر نام متغیر پیشوند
private.را نداشته باشد، علت خطا همین است.برای مثال، سیاست زیر نشان میدهد که عنصر فرزند
<Value>از عنصر<SecretKey>دارای متغیری با نام نامعتبر بهmykeyاست:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> <Value ref="mykey"/> <Id>1918290</Id> </SecretKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>از آنجا که نام متغیر مشخص شده در عنصر فرزند
<Value>از عنصر<SecretKey>از سیاست Generate JWT پیشوندprivate.را ندارد، با خطای زیر مواجه میشوید:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
وضوح تصویر
مطمئن شوید که ویژگی ref در عنصر فرزند <Value> از عناصر <PrivateKey> یا <SecretKey> همیشه مشخص شده و دارای پیشوند private. باشد.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، از متغیر جریان private.privatekey در عنصر فرزند <Value> از عنصر <SecretKey> استفاده کنید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<ExpiresIn>1h</ExpiresIn>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
InvalidSecretInConfig
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Specifying a secret in the configuration is invalid : policy(policy_name) element(element_name).
مثال پیام خطا
Error Saving Revision 2
Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که مقدار (secret) به طور صریح در موارد زیر مشخص شده باشد:
- عناصر فرزند
<Value>یا<Password>از عنصر<PrivateKey>یا - عنصر فرزند
<Value>از عنصر<SecretKey>
در سیاست Generate JWT.
برای مثال، اگر رمز به صراحت به صورت abc در عنصر فرزند <Value> از عنصر <SecretKey> مشخص شده باشد، این خطا رخ میدهد.
تشخیص
نام سیاست Generate JWT و نام عنصری که در آن رمز به صراحت از پیام خطا مشخص شده است را مشخص کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT
JWT-Generate-HS256و نام عنصرSecretKey/Valueاست.Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).فایل XML مربوط به Generate JWT policy را که با شکست مواجه شده است، بررسی کنید و بررسی کنید که آیا رمز به صراحت در عنصر مشخص شده در مرحله 1 مشخص شده است یا خیر. اگر به صراحت مشخص شده باشد، علت خطا همین است.
برای مثال، سیاست زیر نشان میدهد که رمز به صراحت در عنصر فرزند
<Value>از عنصر<SecretKey>مشخص شده است:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <SecretKey> <Value>abc</Value> <Id>1918290</Id> </SecretKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>از آنجا که این رمز به صراحت در عنصر فرزند
<Value>از عنصر<SecretKey>از سیاست Generate JWT مشخص شده است، با خطای زیر مواجه میشوید:Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
وضوح تصویر
مطمئن شوید که مقدار همیشه به عنوان یک متغیر جریان در عنصر فرزند <Value> از عناصر <PrivateKey> یا <SecretKey> مشخص شده باشد.
برای اصلاح مثال Generate JWT policy که در بالا نشان داده شده است، از متغیر جریان private.secretkey در ویژگی ref عنصر فرزند <Value> از <SecretKey> استفاده کنید:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<ExpiresIn>1h</ExpiresIn>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>
قالب زمانی نامعتبر
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
Error Saving Revision 2 Invalid Time format: policy(policy_name) element(element_name).
مثال پیام خطا
Error Saving Revision 3
Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
مثال اسکرین شات
در رابط کاربری Edge، یک کادر محاورهای با یک خطا مشاهده خواهید کرد:

علت
این خطا زمانی رخ میدهد که مقدار مشخص شده در عنصر <NotBefore> جزو یکی از فرمتهای پشتیبانی شده نباشد:
sortable ، RFC 1123 ، RFC 850 ، ANCI-C
برای مثال، اگر مقدار مشخص شده در <NotBefore> برابر با 20-JUN-1990 08:03 باشد، که فرمت پشتیبانی شدهای نیست، این خطا رخ میدهد.
<NotBefore>20-JUN-1990 08:03:00:21-07:00</NotBefore>
تشخیص
نام سیاست Generate JWT و نام عنصری که فرمت زمانی نامعتبر دارد را از پیام خطا شناسایی کنید. برای مثال، در پیام خطای زیر، نام سیاست Generate JWT،
JWT-Generate-HS256و نام عنصرNotBeforeاست.Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).خطای ناموفق Generate JWT policy XML را بررسی کنید و فرمت زمان مورد استفاده در عنصر شناسایی شده در مرحله 1 را تأیید کنید. اگر عنصر از هیچ یک از فرمتهای پشتیبانی شده استفاده نمیکند:
sortable،RFC 1123،RFC 850،ANCI-Cپس علت خطا همینه.
برای مثال، سیاست زیر نشان میدهد که عنصر فرزند
<NotBefore>از یک قالب زمانی پشتیبانی نشده استفاده میکند:<GenerateJWT name="JWT-Generate-HS256"> <DisplayName>JWT Generate HS256</DisplayName> <Algorithm>HS256</Algorithm> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <ExpiresIn>1h</ExpiresIn> <NotBefore>20-JUN-1990 08:03:00:21-07:00</NotBefore> <SecretKey> <Value ref="private.secretkey"/> <Id>1918290</Id> </SecretKey> <Subject>monty-pythons-flying-circus</Subject> <Issuer>urn://apigee-edge-JWT-policy-test</Issuer> <Audience>fans</Audience> <Id/> <AdditionalClaims> <Claim name='claim' ref='reqclaim' type='string' array='true'/> </AdditionalClaims> </GenerateJWT>از آنجا که عنصر
<NotBefore>از سیاست Generate JWT از هیچ یک از قالبهای زمانی پشتیبانیشده استفاده نمیکند، با خطای زیر مواجه میشوید:Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
وضوح تصویر
مطمئن شوید که مقدار مشخص شده در عنصر <NotBefore> از یکی از فرمتهای پشتیبانی شده استفاده میکند:
sortable ، RFC 1123 ، RFC 850 ، ANCI-C
برای اصلاح مثال Generate JWT policy، تاریخ را در عنصر <NotBefore> تغییر دهید تا از قالب sortable مانند زیر استفاده کند:
<GenerateJWT name="JWT-Generate-HS256">
<DisplayName>JWT Generate HS256</DisplayName>
<Algorithm>HS256</Algorithm>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<ExpiresIn>1h</ExpiresIn>
<NotBefore>2018-08-14T11:00:21-07:00</NotBefore>
<SecretKey>
<Value ref="private.secretkey"/>
<Id>1918290</Id>
</SecretKey>
<Subject>monty-pythons-flying-circus</Subject>
<Issuer>urn://apigee-edge-JWT-policy-test</Issuer>
<Audience>fans</Audience>
<Id/>
<AdditionalHeaders>
<Claim name='claim' ref='reqclaim' type='string' array='true'/>
</AdditionalHeaders>
</GenerateJWT>