GenerateJWT নীতি প্রয়োগ সংক্রান্ত সমস্যার সমাধান করা

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন।
তথ্য

InvalidNameForAdditionalClaim

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<AdditionalClaims> এলিমেন্টের চাইল্ড এলিমেন্টে <Claim> ব্যবহৃত দাবিটির নাম নিম্নলিখিত রেজিস্টার করা নামের মধ্যে একটি হলে এই সমস্যাটি হয়:

"kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"

RFC7519-এ রেজিস্টার করা দাবি নির্দিষ্ট করা আছে।

যেমন, <AdditionalClaims> এলিমেন্টের মধ্যে iss দাবি সংক্রান্ত নাম ব্যবহার করলে এই সমস্যাটি হবে।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে Generate JWT নীতির নাম ও দাবি শনাক্ত করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, JWT নীতি জেনারেট করার নাম হল JWT-Generate-HS256 এবং দাবি করার নাম হল iss:

    Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
    
  2. যাচাই করে দেখুন যে JWT নীতি XML তৈরি করার সময় <AdditionalClaims> এলিমেন্টের অধীনে ব্যবহৃত দাবিটির নাম, সমস্যার মেসেজে (উপরে ধাপ ১) শনাক্ত করা দাবিটির নামের সাথে মিলছে কিনা। যেমন, নিম্নলিখিত নীতিতে দাবিটি 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>
    
  3. <Claim>এই<AdditionalClaims> এলিমেন্টের চাইল্ড এলিমেন্টে ব্যবহৃত দাবিটির নাম নিম্নলিখিত রেজিস্টার করা নামের মধ্যে একটি হলে:

    "kid", "iss", "sub", "aud", "iat", "exp", "nbf", "jti"

    তাহলে এটিই হল সমস্যার কারণ।

    উপরে দেখানো Generate JWT নীতি সংক্রান্ত উদাহরণে, <Claim> নামটিকে <AdditionalClaims> এলিমেন্টের অধীনে iss হিসেবে নির্দিষ্ট করা হয়েছে, যার ফলে এই সমস্যা হয়েছে:

    Invalid name for additional claim : policy(JWT-Generate-HS256) claim(iss).
    

রেজোলিউশন

"kid", "iss", "sub", "aud", "iat", "exp", "nbf" বা "jti" রেজিস্টার করা নামগুলির কোনওটিই <Claim>এলিমেন্টের<AdditionalClaims> চাইল্ড এলিমেন্টে ব্যবহার করবেন না।

উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, দাবিটির নাম পরিবর্তন করে 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>

InvalidTypeForAdditionalClaim

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

GenerateJWT নীতির <AdditionalClaims> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ ব্যবহৃত দাবির ধরন নিম্নলিখিত ধরনগুলির মধ্যে একটি না হলে এই সমস্যাটি হয়:

string (ডিফল্ট), number, boolean অথবা map

যেমন, <AdditionalClaims> এলিমেন্টের মধ্যে integer দাবি সংক্রান্ত ধরন ব্যবহার করলে সমস্যা হবে।

ডায়াগনসিস

  1. Generate JWT নীতির নাম, দাবি ও দাবির ধরন শনাক্ত করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256, দাবি সংক্রান্ত নাম হল claim এবং দাবি সংক্রান্ত ধরন হল integer:

    Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
    
  2. 'JWT নীতি XML তৈরি করুন' সংক্রান্ত সমস্যার মেসেজে <AdditionalClaims> এলিমেন্টের অধীনে ব্যবহৃত দাবি ও ধরন এবং ধাপ ১-এ শনাক্ত করা দাবি ও ধরন একই কিনা তা যাচাই করুন। যেমন, নিম্নলিখিত নীতিতে দাবিকে 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>
    
  3. <AdditionalClaims> এলিমেন্টের চাইল্ড এলিমেন্টে <Claim> ব্যবহৃত দাবির ধরন নিম্নলিখিত ধরনগুলির মধ্যে একটি না হলে:

    string (ডিফল্ট), number, boolean অথবা map

    তাহলে এটিই হল সমস্যার কারণ।

    উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণে, <AdditionalClaims> এলিমেন্টের অধীনে <Claim> টাইপকে integer হিসেবে নির্দিষ্ট করা হয়েছে। integer কাজ করে এমন ধরন না হওয়ায়, আপনি এই সমস্যাটি দেখতে পাবেন:

    Invalid type for additional claim : policy(JWT-Generate-HS256) claim(claim) type(integer).
    

রেজোলিউশন

<AdditionalClaims> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ শুধুমাত্র string, number, boolean বা map-এর মতো কাজ করে এমন ডেটা টাইপ ব্যবহার করা হয়েছে কিনা তা নিশ্চিত করুন।

উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, দাবি করার ধরনটি পরিবর্তন করে 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

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<AdditionalClaims> বা <AdditionalHeaders> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ দাবির নাম উল্লেখ করা না থাকলে এই সমস্যা হয়।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে 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
    
  2. JWT নীতি XML তৈরি করতে না পারার কারণ পরীক্ষা করুন এবং <AdditionalClaims> বা <AdditionalHeaders> এলিমেন্টের অধীনে চাইল্ড এলিমেন্ট <Claims>-এ দাবি সংক্রান্ত নাম নেই কিনা তা যাচাই করুন। যেমন, নিম্নলিখিত 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>
    

    <AdditionalClaims> এলিমেন্টের অধীনে <Claim> নাম উল্লেখ করা না থাকার কারণে আপনি এই সমস্যাটি পেয়েছেন:

    Error occurred while validation of bean JWT-Generate-HS256.xml. Reason: - Required attribute name is missing in Claim
    

রেজোলিউশন

<AdditionalClaims> বা <AdditionalHeaders> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ যেন সবসময় দাবির নাম উল্লেখ করা থাকে তা নিশ্চিত করুন।

উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, নিচে দেখানো দাবিটির নাম নির্দিষ্ট করুন:

<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>

InvalidNameForAdditionalHeader

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<AdditionalHeaders> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ ব্যবহৃত দাবিটির নাম নিম্নলিখিত স্ট্যান্ডার্ড JWT হেডারগুলির মধ্যে একটি হলে এই সমস্যাটি হয়:

alg বা typ

যেমন, <AdditionalHeaders> এলিমেন্টের মধ্যে alg দাবি নাম ব্যবহার করলে সমস্যা হবে।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে Generate JWT নীতির নাম ও হেডার নাম শনাক্ত করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256 এবং হেডার নাম হল alg:

    Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
    
  2. যাচাই করে দেখুন যে, JWT নীতি XML তৈরি করার সময় <AdditionalHeaders> এলিমেন্টের মধ্যে থাকা <Claim> চাইল্ড এলিমেন্টে ব্যবহৃত হেডার নামের সাথে ধাপ ১-এ দেখানো সমস্যার মেসেজে শনাক্ত করা হেডার নামের মিল আছে কিনা। যেমন, নিম্নলিখিত নীতিতে হেডার হিসেবে 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>
    
  3. <AdditionalClaims> এলিমেন্টের চাইল্ড এলিমেন্টে <Claim> ব্যবহৃত হেডার নাম নিম্নলিখিত স্ট্যান্ডার্ড JWT হেডারগুলির মধ্যে একটি হলে:

    alg বা typ

    তাহলে এটিই হল সমস্যার কারণ।

    উপরে দেখানো Generate JWT নীতি সংক্রান্ত উদাহরণে, <Claim> নামটিকে <AdditionalClaims> এলিমেন্টের অধীনে alg হিসেবে নির্দিষ্ট করা হয়েছে, যার ফলে এই সমস্যা হয়েছে:

    Invalid name for additional header: policy(JWT-Generate-HS256) header(alg).
    

রেজোলিউশন

<AdditionalHeaders> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ স্ট্যান্ডার্ড JWT হেডার alg বা typ ব্যবহার করবেন না।

উপরে দেখানো Generate JWT নীতির উদাহরণটি সংশোধন করতে, <AdditionalHeaders> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ x5c নাম ব্যবহার করুন:

<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

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

GenerateJWT নীতির <AdditionalHeaders> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ ব্যবহৃত দাবির ধরন নিম্নলিখিত ধরনগুলির মধ্যে একটি না হলে এই সমস্যাটি হবে:

string (ডিফল্ট), number, boolean অথবা map.

যেমন, <AdditionalHeaders> এলিমেন্টের মধ্যে integer দাবি করার ধরন ব্যবহার করলে সমস্যা হবে।

ডায়াগনসিস

  1. Generate JWT নীতির নাম, দাবি ও দাবির ধরন শনাক্ত করুন। যেমন, নিচে দেখানো সমস্যার মেসেজে, JWT নীতি জেনারেট করার নাম হল JWT-Generate-HS256, দাবি করা নামের claim, এবং দাবি করা ধরনের integer:

    Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
    
  2. JWT নীতি XML তৈরি করতে না পারার ক্ষেত্রে <AdditionalClaims> এলিমেন্টের অধীনে ব্যবহৃত দাবি ও দাবির ধরন এবং ধাপ ১-এ সমস্যার মেসেজে শনাক্ত করা দাবি ও দাবির ধরন ম্যাচ করছে কিনা তা যাচাই করুন। যেমন, নিম্নলিখিত নীতিতে দাবিকে 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>
    
  3. <AdditionalHeaders> এলিমেন্টের চাইল্ড এলিমেন্টে <Claim> ব্যবহৃত দাবির ধরন নিম্নলিখিত ধরনগুলির মধ্যে একটি না হলে:

    string (ডিফল্ট), number, boolean অথবা map

    তাহলে এটিই হল সমস্যার কারণ।

    উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণে, <AdditionalHeaders> এলিমেন্টের অধীনে <Claim> টাইপকে integer হিসেবে নির্দিষ্ট করা হয়েছে। integer কাজ করে এমন ধরন না হওয়ায়, আপনি এই সমস্যাটি দেখতে পাবেন:

    Invalid type for additional header : policy(JWT-Generate-HS256) claim(claim) type(integer).
    

রেজোলিউশন

<AdditionalHeaders> এলিমেন্টের চাইল্ড এলিমেন্ট <Claim>-এ শুধুমাত্র কাজ করে এমন ডেটার ধরন string, number, boolean বা map ব্যবহার করা হয়েছে কিনা তা নিশ্চিত করুন।

উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, দাবি করার ধরন পরিবর্তন করে 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>

InvalidValueOfArrayAttribute

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<AdditionalClaims> বা <AdditionalHeaders> এলিমেন্টের <Claim> চাইল্ড এলিমেন্টে অ্যারে অ্যাট্রিবিউটের ভ্যালু true বা false হিসেবে সেট করা না থাকলে এই সমস্যা হয়।

যেমন, <AdditionalClaims> বা <AdditionalHeaders>-এর চাইল্ড এলিমেন্ট <Claim>-এ অ্যারে অ্যাট্রিবিউটের ভ্যালু yes হিসেবে সেট করলে এই সমস্যা হয়।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে Generate JWT নীতির নাম ও দাবি শনাক্ত করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256 এবং দাবিটির নাম হল claim:

    Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
    
  2. ধাপ ১-এ ত্রুটি মেসেজে শনাক্ত করা দাবি নামের সাথে, JWT নীতি XML তৈরি করতে না পারার ক্ষেত্রে <AdditionalHeaders> এলিমেন্টের মধ্যে চাইল্ড এলিমেন্ট <Claim>-এ ব্যবহৃত দাবি নামের মিল আছে কিনা তা যাচাই করুন। যেমন, নিম্নলিখিত নীতিতে দাবিটির নাম 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>
    
  3. <AdditionalClaims> এলিমেন্টের <Claim> চাইল্ড এলিমেন্টে array অ্যাট্রিবিউটের ভ্যালু true বা false হিসেবে সেট করা না থাকলে, এটিই হল সমস্যার কারণ।

    কারণ, উপরের উদাহরণে <AdditionalClaims> এলিমেন্টের <Claim> চাইল্ড এলিমেন্টের array অ্যাট্রিবিউট yes হিসেবে সেট করা আছে, তাই আপনি এই সমস্যাটি পেয়েছেন:

    Invalid value for array attribute: policy(JWT-Generate-HS256) claim(claim).
    

রেজোলিউশন

<Claim><AdditionalClaims> বা <AdditionalHeaders>-এর চাইল্ড এলিমেন্টে অ্যারে অ্যাট্রিবিউটের ভ্যালু true বা false হিসেবে সেট করা আছে কিনা তা নিশ্চিত করুন।

উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, অ্যারে অ্যাট্রিবিউটের মান পরিবর্তন করে 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>

InvalidConfigurationForActionAndAlgorithm

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<PrivateKey> এলিমেন্ট HS ফ্যামিলি অ্যালগরিদমের সাথে ব্যবহার করা হলে এবং <SecretKey> এলিমেন্ট RSA ফ্যামিলি অ্যালগরিদমের সাথে ব্যবহার করা হলে এই সমস্যাটি হয়। এইসব শর্তের মধ্যে যেকোনও একটি সত্য হলেও সমস্যা হবে।

যেমন, HS Family অ্যালগরিদমের সাথে <PrivateKey> এলিমেন্ট ব্যবহার করলে এই সমস্যাটি হয়।

ডায়াগনসিস

  1. 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).
    
  2. ধাপ ১-এ সমস্যার মেসেজে শনাক্ত করা এলিমেন্ট ও অ্যালগরিদম ফ্যামিলির সাথে, JWT নীতি XML তৈরি করতে না পারার ক্ষেত্রে ব্যবহৃত এলিমেন্ট ও অ্যালগরিদম ফ্যামিলি ম্যাচ করছে কিনা তা যাচাই করুন। যেমন, নিম্নলিখিত নীতিতে এলিমেন্ট হিসেবে 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>
    
  3. <Algorithm> এলিমেন্টের ভ্যালু HS256 হলেও আপনি যদি <PrivateKey> ব্যবহার করে থাকেন, তাহলে এটিই হল সমস্যার কারণ।

    উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণে, <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 নীতির উদাহরণটি সংশোধন করতে, GenerateJWT নীতি থেকে <SecretKey> ব্যবহার করুন যা 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>

InvalidValueForElement

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<Algorithm> এলিমেন্টে উল্লেখ করা মান নিম্নলিখিত মানগুলির মধ্যে একটি না হলে এই সমস্যাটি হয়:

HS256, HS384, HS512, RS256, RS384, RS512

যেমন, <Algorithm> এলিমেন্টে অ্যালগরিদম ভ্যালু RS128 হিসেবে উল্লেখ করলে এই সমস্যা হয়।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে Generate JWT নীতির নাম ও এলিমেন্টের নাম শনাক্ত করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256 এবং এলিমেন্টের নাম হল Algorithm.

    Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
    
  2. JWT নীতি XML তৈরি করা যায়নি, সেটি পরীক্ষা করুন এবং <Algorithm> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু চেক করুন।

    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>
    
  3. <Algorithm> এলিমেন্টে উল্লেখ করা ভ্যালু পরীক্ষা করুন। এটি নিম্নলিখিত মানগুলির মধ্যে একটি না হলে:

    HS256, HS384, HS512, RS256, RS384, RS512

    তাহলে এটিই হল সমস্যার কারণ।

    উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণে, <Algorithm> নাম HS128 হিসেবে নির্দিষ্ট করা আছে। এটি কাজ করে এমন অ্যালগরিদম না হওয়ার কারণে, আপনি এই সমস্যাটি দেখতে পাবেন:

    Invalid Value for element : policy(JWT-Generate-HS256) element(Algorithm).
    

রেজোলিউশন

<Algorithm> এলিমেন্টে উল্লেখ করা মানটি যেন ব্যবহারযোগ্য মানগুলির মধ্যে একটি হয় তা নিশ্চিত করুন:

HS256, HS384, HS512, RS256, RS384, RS512

<SecretKey> এলিমেন্ট ব্যবহার করে উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, <Algorithm>-এর ভ্যালু পরিবর্তন করে HS25 করুন। মনে রাখবেন, <SecretKey> এলিমেন্ট ব্যবহার করা হলে, আপনি শুধুমাত্র HS Family অ্যালগরিদম ব্যবহার করতে পারবেন।

<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>

MissingConfigurationElement

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

Generate JWT নীতিতে RSA ফ্যামিলি অ্যালগরিদমের সাথে <PrivateKey> এলিমেন্ট ব্যবহার না করলে এই সমস্যা হয়। একইভাবে, জেনারেট JWT নীতিতে HS ফ্যামিলি অ্যালগরিদম সহ <SecretKey> এলিমেন্ট ব্যবহার করা না হলে, এই সমস্যা হতে পারে।

যেমন, RSA ফ্যামিলি অ্যালগরিদমের সাথে <PrivateKey> এলিমেন্ট ব্যবহার না করলে এই সমস্যা হয়।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে 'JWT নীতি জেনারেট করুন' ও অনুপস্থিত এলিমেন্টের নাম শনাক্ত করুন। যেমন, নিচে দেখানো সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256 এবং অনুপস্থিত এলিমেন্টের নাম হল SecretKey।

    Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
    
  2. JWT নীতি XML তৈরি করা যায়নি, সেটি পরীক্ষা করুন এবং সমস্যার মেসেজে উল্লেখ করা এলিমেন্টটি নেই কিনা তা যাচাই করুন। এটি না থাকলে, সেটিই সমস্যার কারণ।

    যেমন, নিম্নলিখিত নীতিতে 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 নীতির উদাহরণে HS Family অ্যালগরিদম ব্যবহার করা হয়েছে, কিন্তু বাধ্যতামূলক এলিমেন্ট SecretKey অনুপস্থিত থাকার ফলে এই সমস্যা হয়েছে:

    Missing configuration element : policy(JWT-Generate-HS256) element(SecretKey).
    

রেজোলিউশন

নিশ্চিত করুন যে বাধ্যতামূলক <PrivateKey> এলিমেন্ট RSA ফ্যামিলি অ্যালগরিদমের সাথে এবং বাধ্যতামূলক <SecretKey> এলিমেন্ট HS ফ্যামিলি অ্যালগরিদমের সাথে ব্যবহার করা হয়েছে।

HS256 অ্যালগরিদম ব্যবহার করে উপরে দেখানো JWT নীতি তৈরির উদাহরণটি সংশোধন করতে, JWT নীতি তৈরির ক্ষেত্রে <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>

InvalidKeyConfiguration

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

Error Saving Revision 
Invalid Key configuration : policy(policy_name).

সমস্যার মেসেজের উদাহরণ

Error Saving Revision 3
Invalid Key configuration : policy(JWT-Generate-HS256).

স্ক্রিনশটের উদাহরণ

Edge UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

Generate JWT নীতিতে <PrivateKey> বা <SecretKey> এলিমেন্টে বাধ্যতামূলক চাইল্ড এলিমেন্ট <Value> সংজ্ঞায়িত করা না থাকলে এই সমস্যা হয়।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে Generate JWT নীতির নাম শনাক্ত করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256।

    Invalid Key configuration : policy(JWT-Generate-HS256).
    
  2. JWT নীতি XML তৈরি করতে না পারার কারণ পরীক্ষা করুন এবং যাচাই করুন যে <PrivateKey> বা <SecretKey> এলিমেন্টে চাইল্ড এলিমেন্ট <Value> সংজ্ঞায়িত করা হয়নি। <Value> নির্দিষ্ট করা না থাকলে, এটিই সমস্যার কারণ।

    যেমন, নিম্নলিখিত নীতিতে <SecretKey>এলিমেন্টে চাইল্ড এলিমেন্ট <Value>-এর সংজ্ঞা দেওয়া নেই:

    <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>
    

    Generate JWT নীতির <SecretKey> এলিমেন্টে চাইল্ড এলিমেন্ট <Value> সংজ্ঞায়িত না থাকার কারণে, আপনি এই সমস্যাটি দেখতে পাবেন:

    Invalid Key configuration : policy(JWT-Generate-HS256).
    

রেজোলিউশন

Generate JWT নীতির <PrivateKey> বা <SecretKey> এলিমেন্টে চাইল্ড এলিমেন্ট <Value> সবসময় সংজ্ঞায়িত করা আছে কিনা তা নিশ্চিত করুন।

উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, নিচে দেখানো <SecretKey> এলিমেন্টের অধীনে চাইল্ড এলিমেন্ট <Value> নির্ধারণ করুন:

<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>

EmptyElementForKeyConfiguration

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<PrivateKey> বা <SecretKey> এলিমেন্টের <Value> চাইল্ড এলিমেন্টে ref অ্যাট্রিবিউট উল্লেখ করা না থাকলে বা খালি থাকলে এই সমস্যা হয়।

যেমন, <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value> খালি থাকলে, সমস্যাটি হয়।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে 'JWT তৈরি করুন' নীতির নাম ও খালি এলিমেন্টের নাম শনাক্ত করুন। যেমন, নিচে দেখানো সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256 এবং ফাঁকা এলিমেন্টের নাম হল SecretKey/Value।

    Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
    
  2. JWT নীতি XML তৈরি করতে না পারার কারণ পরীক্ষা করুন এবং ধাপ ১-এ শনাক্ত করা এলিমেন্ট খালি আছে কিনা তা যাচাই করুন। এটি ফাঁকা থাকলে, সেটিই সমস্যার কারণ।

    যেমন, নিম্নলিখিত নীতিতে দেখা যাচ্ছে যে <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value> খালি আছে:

    <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>
    

    Generate JWT নীতিতে <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value> খালি থাকার কারণে আপনি এই সমস্যাটি পেয়েছেন:

    Empty Element for Key Configuration : policy(JWT-Generate-HS256) element(SecretKey/Value).
    

রেজোলিউশন

<PrivateKey> বা <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>-এ ref অ্যাট্রিবিউট সবসময় নির্দিষ্ট করা আছে কিনা এবং "private." প্রিফিক্স আছে কিনা তা নিশ্চিত করুন।

উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>-এ ফ্লো ভেরিয়েবল private.privatekey ব্যবহার করুন।

<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>

InvalidVariableNameForSecret

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<PrivateKey> বা <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>-এর ref অ্যাট্রিবিউটে উল্লেখ করা ফ্লো ভেরিয়েবলের নামে প্রাইভেট প্রিফিক্স (private.) না থাকলে এই সমস্যা হয়।

যেমন :

<PrivateKey> এলিমেন্টের <Value> চাইল্ড এলিমেন্টের ref অ্যাট্রিবিউটে ফ্লো ভেরিয়েবলের নাম mykey হিসেবে উল্লেখ করা থাকলে, এই সমস্যাটি হয়।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে, Generate JWT নীতির নাম এবং ভুল ভেরিয়েবলের নাম সহ এলিমেন্টের নাম শনাক্ত করুন। যেমন, নিচে দেখানো সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256 এবং এলিমেন্টের নাম হল SecretKey/Value।

    Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
    
  2. JWT নীতি XML তৈরি করা যায়নি, সেটি পরীক্ষা করুন এবং ১ নম্বর ধাপে শনাক্ত করা এলিমেন্টে ব্যবহৃত ভেরিয়েবলের নাম যাচাই করুন। ভেরিয়েবলের নামে private. প্রিফিক্স না থাকলে, এটিই হল সমস্যার কারণ।

    যেমন, নিম্নলিখিত নীতিতে দেখানো হয়েছে যে <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>-এর অবৈধ ভেরিয়েবল নাম 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>
    

    Generate JWT নীতির <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>-এ নির্দিষ্ট করা ভেরিয়েবলের নামের আগে private. প্রিফিক্স না থাকার কারণে, আপনি এই সমস্যাটি দেখতে পাবেন:

    Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
    

রেজোলিউশন

<PrivateKey> বা <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্টে <Value> ref অ্যাট্রিবিউট সবসময় নির্দিষ্ট করা আছে এবং private. প্রিফিক্স আছে কিনা তা নিশ্চিত করুন।

উপরে দেখানো JWT নীতি তৈরির উদাহরণটি সংশোধন করতে, <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>-এ ফ্লো ভেরিয়েবল private.privatekey ব্যবহার করুন:

<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

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

এই সমস্যাটি তখনই হয় যদি ভ্যালু (গোপন) স্পষ্টভাবে এগুলিতে উল্লেখ করা থাকে:

  • <PrivateKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value> বা <Password> অথবা
  • <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>

Generate JWT নীতিতে।

যেমন, যদি <SecretKey> এলিমেন্টের <Value> চাইল্ড এলিমেন্টে সিক্রেটটি স্পষ্টভাবে abc হিসেবে উল্লেখ করা হয়, তাহলে এই সমস্যাটি হয়।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে, Generate JWT নীতির নাম এবং এলিমেন্টের নাম শনাক্ত করুন যেখানে সিক্রেট স্পষ্টভাবে উল্লেখ করা আছে। যেমন, নিচে দেখানো সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256 এবং এলিমেন্টের নাম হল SecretKey/Value।

    Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
    
  2. JWT নীতি XML তৈরি করা যায়নি, সেটি পরীক্ষা করুন এবং ১ নম্বর ধাপে শনাক্ত করা এলিমেন্টে সিক্রেট স্পষ্টভাবে উল্লেখ করা আছে কিনা তা যাচাই করুন। এটি স্পষ্টভাবে উল্লেখ করা থাকলে, সেটিই হল সমস্যার কারণ।

    যেমন, নিম্নলিখিত নীতিতে দেখানো হয়েছে যে <SecretKey>এলিমেন্টের <Value>চাইল্ড এলিমেন্টে গোপনীয়তা স্পষ্টভাবে উল্লেখ করা হয়েছে:

    <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>
    

    Generate JWT নীতির <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>-এ সিক্রেট স্পষ্টভাবে উল্লেখ করা হয়েছে বলে আপনি এই সমস্যাটি পেয়েছেন:

    Specifying a secret in the configuration is invalid : policy(JWT-Generate-HS256) element(SecretKey/Value).
    

রেজোলিউশন

<PrivateKey> বা <SecretKey> এলিমেন্টের চাইল্ড এলিমেন্ট <Value>-এ ভ্যালু সবসময় ফ্লো ভেরিয়েবল হিসেবে নির্দিষ্ট করা আছে কিনা তা নিশ্চিত করুন।

উপরে দেখানো JWT নীতি জেনারেট করার উদাহরণটি সংশোধন করতে, <SecretKey>-এর চাইল্ড এলিমেন্টের <Value> ref অ্যাট্রিবিউটে ফ্লো ভেরিয়েবল private.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>

InvalidTimeFormat

সমস্যা সংক্রান্ত মেসেজ

Edge UI বা Edge ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি ডেপ্লয়মেন্ট এই সমস্যার মেসেজ সহ ব্যর্থ হয়:

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 UI-তে, আপনি একটি সমস্যার মেসেজ সহ ডায়ালগ বক্স দেখতে পাবেন:

কারণ

<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>

ডায়াগনসিস

  1. Generate JWT নীতির নাম এবং এলিমেন্টের নাম শনাক্ত করুন, যেটির ভুল টাইম ফর্ম্যাট আছে। এটি আপনি সমস্যার মেসেজ থেকে জানতে পারবেন। যেমন, নিচে দেখানো সমস্যার মেসেজে, Generate JWT নীতির নাম হল JWT-Generate-HS256 এবং এলিমেন্টের নাম হল NotBefore।

    Invalid Time format: policy(JWT-Generate-HS256) element(NotBefore).
    
  2. JWT নীতি XML তৈরি করতে না পারার কারণ পরীক্ষা করুন এবং ধাপ ১-এ শনাক্ত করা এলিমেন্টে ব্যবহৃত সময় ফর্ম্যাট যাচাই করুন। এলিমেন্টটি কাজ করে এমন কোনও ফর্ম্যাট ব্যবহার না করলে:

    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>
    

    Generate JWT নীতির <NotBefore> এলিমেন্ট কোনও মানানসই টাইম ফর্ম্যাট ব্যবহার না করার কারণে আপনি এই সমস্যার মেসেজটি পাবেন:

    Invalid variable name for secret : policy(JWT-Generate-HS256) element(SecretKey/Value).
    

রেজোলিউশন

<NotBefore> এলিমেন্টে উল্লেখ করা মান যেন কাজ করে এমন ফর্ম্যাটের মধ্যে একটি হয় তা নিশ্চিত করুন:

sortable, RFC 1123, RFC 850, ANCI-C

Generate JWT নীতির উদাহরণটি সংশোধন করতে, <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>