পোস্টম্যানের সাথে শিরোনামগুলিতে জেডাব্লুটি টোকেন প্রেরণ


169

আমি নীচের নিবন্ধের ভিত্তিতে জেডাব্লুটি টোকেন ভিত্তিক সুরক্ষা প্রয়োগের পরীক্ষা করছি । আমি সফলভাবে পরীক্ষার সার্ভার থেকে একটি টোকেন পেয়েছি। আমি কীভাবে Chrome পোষ্টম্যান রেস্ট ক্লায়েন্ট প্রোগ্রামটি টোকনটি শিরোনামে প্রেরণ করতে পারি তা বুঝতে পারি না।

পোস্টম্যানের স্ক্রিনশট

আমার প্রশ্নগুলি নিম্নরূপ:

1) আমি কি সঠিক শিরোনামের নাম এবং / অথবা পোস্টম্যান ইন্টারফেস ব্যবহার করছি?

2) আমার কি টোকন 64 এনকোড বেস করা প্রয়োজন? আমি ভেবেছিলাম আমি কেবল টোকেনটি ফেরত পাঠাতে পারি।


হাই, আমি পোষ্টম্যানে কোথায় দেখতে পাব jwt টোকেন আমি পেয়েছি?
ইউএস

1
@ মলমেন্ডি, এটি নির্ভরযোগ্য সার্ভারটি কনফিগার করার উপায়ের উপর নির্ভর করে। এটি ইউআরএল হিসাবে ফিরে আসতে পারে (এটি ইউআরএল স্ট্রিংয়ে এটি সন্ধান করুন) অথবা এটি প্রতিক্রিয়া বডিতে ফিরে আসতে পারে (প্রতিক্রিয়াটির দেহের ক্ষেত্রে এটি সন্ধান করুন)। এই দুটি প্রধান বিষয় আমি সচেতন aware
ডায়োড ড্যান

লিঙ্করট। নতুন লিঙ্ক: auth0.com/docs/design/web-apps-vs-web-apis-cookies-vs-tokens
নিলন

উত্তর:


277

অনুরোধের জন্য শিরোনামের নামটি কেবল অনুমোদন ব্যবহার করুন। টোকেনের আগে বেরিয়ার রাখুন। আমি এটি চেষ্টা করেছিলাম এবং এটি আমার পক্ষে কাজ করে।

অনুমোদন: বহনকারী টোকেন_আস্ট্রিং

জেডাব্লুটিটির প্রতিটি অংশই একটি বেস64url এনকোডেড মান।


61
একটি স্পষ্টকরণ হিসাবে, "শিরোনাম" ক্ষেত্রটি অনুমোদনে পরিণত হয় এবং "মান" ক্ষেত্রটি বেয়ার হয়ে যায় [হোয়াইটস্পেস] <আপনার - কোড / এখানে>
ডায়োড ড্যান

আপনি কি জানেন ক্ষেত্রের কোন অংশটি এনক্রিপ্ট করা আছে? দেখা যাচ্ছে যে শেষের পরের তথ্য ' বিভাজক আমাকে আবর্জনা চরিত্রের মতো দেখতে দেয়। আমি ধরে নিই এটি আসলে টোকন জেনারেটর দ্বারা এনক্রিপ্ট করা তথ্য?
ডায়োড ড্যান

5
পরীক্ষা করে দেখুন jwt.io এ অনুষদে একটি অধ্যায় যেখানে আপনি একটি JWT পেস্ট এবং তার সঙ্কেতমুক্ত বিষয়বস্তু, ঘটছে কি এইজন্য তার শ্রেষ্ঠ উপায় দেখতে পারেন। টোকেনের শেষ বিভাগটি তৈরি করতে সার্ভার সিক্রেট স্ট্রিং ব্যবহার করা হয়। জেডাব্লুটিটি কেবলমাত্র পেডলোড এনক্রিপ্ট করে না তা স্বাক্ষর করে অর্থাত আপনি স্ট্রিংয়ের 1 ও 2 অংশটি ডিকোড করতে পারেন তবে গোপনীয়তা ছাড়া এটি যাচাই করতে পারবেন না। self-issued.info/docs/draft-ietf-oauth-json-web-token.html
মিক কুলেন

4
কেউ যদি দয়া করে আমাদেরকে JWT- এর আগে রাখার দরকার হয় তবে সে সম্পর্কে বিস্তারিত জানাতে পারেন? সার্ভারের কাছে এটি কি কোনও ধরণের সংকেত যে এটি একটি JWT?
ব্যবহারকারী 137717

3
এটি কেবল সম্মেলন - আপনি এখানে সমস্ত বিবরণ পেতে পারেন: jwt.io/intr Productions
মাইকেল

134

এখানে একটি চিত্র এটি যদি সহায়তা করে :)

পিয়ন

হালনাগাদ:

পোস্টম্যান টিম "অনুমোদনের ট্যাবে" "বেয়ারার টোকেন" যুক্ত করেছে: আপডেটড পোস্টম্যান


40

আমি এই প্রশ্নটিতে কিছু আকর্ষণীয় টিপ যোগ করছি যা আপনাকে ছেলেরা JWT এপিস পরীক্ষা করতে সহায়তা করতে পারে।

এটি আসলে খুব সহজ।

আপনি যখন আপনার এপিতে (লগইন শেষ পয়েন্ট) লগ ইন করবেন, আপনি তাত্ক্ষণিকভাবে আপনার টোকেনটি পাবেন এবং @ মিক-ক্যালেন বলেছিলেন আপনাকে আপনার শিরোনামে জেডাব্লুটিটি ব্যবহার করতে হবে:

Authorization: Bearer TOKEN_STRING

এখন আপনি যদি স্বয়ংক্রিয় করতে চান বা আপনার জীবনকে আরও সহজ করতে চান তবে আপনার পরীক্ষাগুলি আপনি টোকনকে বিশ্বব্যাপী সংরক্ষণ করতে পারেন যা আপনি অন্য সমস্ত প্রান্তে কল করতে পারেন:

Authorization: Bearer {{jwt_token}}

পোস্টম্যানে: তারপরে পোস্টম্যানে jwt_token = TOKEN_STRING হিসাবে একটি বৈশ্বিক পরিবর্তনশীল করুন।

আপনার লগইন শেষ পয়েন্টে: এটিকে কার্যকর করতে টেস্ট ট্যাবের শুরুতে যুক্ত করুন:

var data = JSON.parse(responseBody);
postman.clearGlobalVariable("jwt_token");
postman.setGlobalVariable("jwt_token", data.jwt_token);

আমি অনুমান করছি যে আপনার এপি এই প্রতিক্রিয়াতে জেসন হিসাবে টোকেনটি ফিরিয়ে দিচ্ছে: {"jwt_token": "টোকেন_স্ট্রিং"}, কিছুটা ভিন্নতা থাকতে পারে।

প্রথম লাইনে আপনি ডেটা ভেরিবেলে প্রতিক্রিয়া যুক্ত করেন। আপনার গ্লোবাল পরিষ্কার করুন এবং মান নির্ধারণ করুন।

সুতরাং এখন আপনার কাছে বিশ্বব্যাপী ভেরিয়েবলে টোকেন রয়েছে, যা অনুমোদনের জন্য কী সহজ করে তোলে: আপনার সমস্ত প্রান্তে বহনকারী {w jwt_token}।।

আশা করি এই টিপ সাহায্য করবে।



কিছু পড়ার জন্য সম্পাদনা করুন

পোস্টম্যান সম্পর্কে পরীক্ষা সম্পর্কে: পরীক্ষার উদাহরণ

কমান্ড লাইন: নিউম্যান

সিআই: জেনকিন্সের সাথে একীকরণ করা

দুর্দান্ত ব্লগ পোস্ট: মাস্টার এপি পরীক্ষার অটোমেশন


আকর্ষণীয়, আমি Testট্যাব এবং পোস্টম্যান কোডিংয়ের ধারণার সাথে অপরিচিত । আপনি কি এটি দিয়ে শুরু করার পরামর্শ দেওয়ার কোনও সংস্থান আছে?
ডায়োড ড্যান

হ্যাঁ, এমন কিছু রয়েছে যা আমি দরকারী বলে খুঁজে পেয়েছি: * getpostman.com/docs/testing_ উদাহরণ * ব্লগ.েস্টপোজেক্ট.আইজি / 6/6
পাবলো প্যালাসিয়োস

স্বয়ংক্রিয় পরীক্ষার ক্ষেত্রে পোস্টম্যান আসলেই আকর্ষণীয় এবং বেশ শক্তিশালী। আপনি পোস্টম্যানকে এমনভাবে কনফিগার করতে পারেন যাতে এটি র্যান্ডম ডেটা গ্লোবাল ভেরিয়েবল বা পরিবেশের ভেরিয়েবলগুলি তৈরি করতে পারে যা আপনি পরীক্ষায় চালাতে পারেন। এবং পুনরাবৃত্তি রান করুন এবং শেষ পয়েন্ট ইউনিট পরীক্ষা হিসাবে যে কোনও প্রতিক্রিয়া পরীক্ষা করুন। এগুলি সংরক্ষণ করুন এবং আপনি কোড পরিবর্তন করার সময় ত্রুটিগুলি সন্ধান করুন। আমি কমান্ড লাইন ইউটিলিটিটি ব্যবহার করি নি তবে আমি বুঝতে পারি যে আপনি এটির সিআই পাইপলাইনে চালানোর জন্য এটি কনফিগার করতে পারেন।
পাবলো পালাসিওস

আপনি এখানে কমান্ড লাইনের বিষয়ে পড়তে পারেন: getpostman.com/docs/newman_intro
পাবলো

9

আমার Flaskপ্রথম দুটি সমাধান যা একই ( Authorization: Bearer <token>), এবং এটি পাওয়ার পরে চেষ্টা করার পরেও একই সমস্যা ছিল :

{
    "description": "Unsupported authorization type",
    "error": "Invalid JWT header",
    "status_code": 401
}

আমি অবশেষে এটি ব্যবহার করে সমাধান করতে সক্ষম হয়েছি:

Authorization: jwt <token>

ভেবেছিলেন যে এটি একই জিনিসগুলির মুখোমুখি লোকদের কিছুটা সময় সাশ্রয় করতে পারে।


1
আমি পেয়ে ছিল Authentication credentials were not providedমধ্যে djangoব্যবহার Bearer <token>। সঙ্গে সমাধান jwt <token>। সমাধানের জন্য ধন্যবাদ
S_M

7

এটি কীভাবে স্বয়ংক্রিয়ভাবে টোকেন সেট করবেন is

আপনার লগইন / প্রমাণীকরণের অনুরোধে

এখানে চিত্র বর্ণনা লিখুন

তারপরে সত্যায়িত পৃষ্ঠার জন্য

এখানে চিত্র বর্ণনা লিখুন


4

আপনি যদি পোস্টম্যানকে সঠিকভাবে ব্যবহার করতে চান তবে শিরোনামগুলি ব্যবহার করা

কী: অনুমোদন

মান: jwt {টোকেন

এর মত সহজ.


2

JWT প্রমাণীকরণ খোলার জন্য যারা ওয়ার্ডপ্রেস প্লাগইন অ্যাডভান্সড অ্যাক্সেস ম্যানেজার ব্যবহার করছেন তাদের জন্য ।

শিরোলেখ ক্ষেত্র করা উচিত প্রমাণীকরণ পরিবর্তে অনুমোদন

এখানে চিত্র বর্ণনা লিখুন

এএএম তাদের নথির ভিতরে এটি উল্লেখ করেছে ,

বিঃদ্রঃ! এএএম স্ট্যান্ডার্ড অথরাইজেশন শিরোনাম ব্যবহার করে না কারণ এটি বেশিরভাগ অ্যাপাচি সার্ভারগুলি এড়িয়ে যায়। ...


আশা করি এটি কাউকে সাহায্য করবে! অন্যান্য উত্তরের জন্য ধন্যবাদ আমাকে অনেক সাহায্য করেছে !!


2
  1. ওপেন পোস্টম্যান।
  2. "শিরোনাম" ক্ষেত্রে যান।
  3. সেখানে একজন "কী মান" ফাঁকা দেখতে পাবে।
  4. কী টাইপ "অনুমোদন"।
  5. মান ধরণে "বেয়ারার (স্পেস) আপনার_অ্যাক্সেস_ টোকেন_ভ্যালু"।

সম্পন্ন!


2

এখানে চিত্র বর্ণনা লিখুন

অন্য সব কিছু। প্যারামস, অনুমোদন, দেহ, প্রাক-অনুরোধ স্ক্রিপ্ট, টেস্টগুলি খালি রয়েছে, কেবল শিরোনাম ট্যাবটি খুলুন এবং চিত্রটিতে প্রদর্শিত হিসাবে যুক্ত করুন। এটি জিইটি অনুরোধের জন্যও একই।


0

কোনওভাবে পোস্টম্যান আমার পক্ষে কাজ করেননি। আমাকে RESTED নামে একটি ক্রোম এক্সটেনশন ব্যবহার করতে হয়েছিল যা কাজ করেছিল।


0

মোপলিন কীভাবে উল্লিখিত হয়েছে আমি তা করেছি। তবে আমার কেস সার্ভিসে JWT কে প্রতিক্রিয়ার শিরোনামে পাঠান, কী "অনুমোদন" কী এর অধীনে একটি মান হিসাবে।

Authorization →Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJpbWFsIiwiZXhwIjoxNDk4OTIwOTEyfQ.dYEbf4x5TGr_kTtwywKPI2S-xYhsp5RIIBdOa_wl9soqaFkUUKfy73kaMAv_c-6cxTAqBwtskOfr-Gm3QI0gpQ

আমি যা করেছিলাম তা পোস্টমনে একটি গ্লোবাল ভেরিয়েবল তৈরি করে

key-
> jwt value-> blahblah

লগইন অনুরোধে-> পরীক্ষাগুলি ট্যাব, যোগ করুন

postman.clearGlobalVariable("jwt");
postman.setGlobalVariable("jwt", postman.getResponseHeader("Authorization"));

অন্যান্য অনুরোধে শিরোনাম ট্যাব নির্বাচন করুন এবং দিন

key-> অনুমোদন

মান -> {{jwt}}


0

পোস্টম্যানের সর্বশেষ সংস্করণে (7++) অনুমোদনে কোনও বাহক ক্ষেত্র নেই So তাই শিরোনাম ট্যাবে যান

অনুমোদন হিসাবে কীটি নির্বাচন করুন এবং মূল্যতে JWT লিখুন


V7.19.0 + এর জন্য এবং এটি কিছুক্ষণের জন্য রয়েছে, এখানে ট্যাবটিতে একটি Bearer Tokenসহায়ক রয়েছে Authorization, এখানে টোকেন মান যুক্ত করে (হার্ডকোডযুক্ত বা ডায়নামিক ভেরিয়েবল হিসাবে) Authorizationঅনুরোধের জন্য একই শিরোনাম তৈরি করবে ।
ড্যানি ডেইনটন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.