Bash:
বেসিক অথেন্টিকেশন সহ HTTP রিকুয়েস্ট প্রেরণ
কিভাবে:
চলুন কোডের সাথে কিছু কাজ করি। আমরা curl
, একটি প্রচলিত কমান্ড-লাইন টুল ব্যবহার করব। username:password
আপনার প্রমাণীকরণ তথ্য দিয়ে এবং http://example.com/resource
আপনার লক্ষ্য URL দিয়ে প্রতিস্থাপন করুন।
curl -u username:password http://example.com/resource
অথবা আপনার প্রমাণীকরণ তথ্যগুলি পূর্বে base64-এ কোড করুন এবং তাদের নিম্নরূপ ব্যবহার করুন:
# প্রমাণীকরণ তথ্যগুলি কোড করা
credentials=$(echo -n username:password | base64)
# অনুরোধ প্রেরণ করা
curl -H "Authorization: Basic $credentials" http://example.com/resource
একটি সফল অনুরোধের নমুনা আউটপুট এরকম দেখাবে:
{
"data": "কিছু সীমাবদ্ধ তথ্য",
"message": "প্রবেশাধিকার অনুমোদিত"
}
গভীরে ডুব:
ঐতিহাসিকভাবে, মৌলিক প্রমাণীকরণ HTTP-এর প্রাথমিক দিন থেকে একটি অংশ হয়েছে, তবে এটি দোষযুক্ত - মূলত HTTPS মতো নিরাপদ চ্যানেলের উপর ব্যবহার না হলে এর দুর্বলতা।
বিকল্পগুলির মধ্যে OAuth রয়েছে, যা আরও নিরাপদ এবং অ্যাক্সেসের উপর আরও সূক্ষ্ম নিয়ন্ত্রণ প্রদান করে। Digest প্রমাণীকরণ আরেকটি, সাদা পাঠ্যের পরিবর্তে হ্যাশ করা প্রমাণীকরণ পাঠায়।
যান্ত্রিকী ব্যাপারগুলোর জন্য, যখন আপনি মৌলিক প্রমাণীকরণ প্রমাণীকরণ পাঠান, তারা HTTP হেডারে Base64-এ কোডেড অবস্থায় অন্তর্ভুক্ত করা হয়। এটি এনক্রিপশন নয়, তাই যদি আপনি HTTPS ব্যবহার না করেন, অনুরোধটি যে কেউ আঁচ করতে পারে তাদের দ্বারা সহজেই ডিকোড করা যাবে। HTTPS ব্যবহার করা ট্রান্সমিশনকে নিরাপদ করে, ক্লায়েন্ট এবং সার্ভারের মধ্যে সবকিছু এনক্রিপ্ট করে।
আরও দেখুন
- cURL অফিসিয়াল ডকুমেন্টেশন: https://curl.haxx.se/docs/manpage.html
- HTTP প্রমাণীকরণ: মৌলিক এবং ডাইজেস্ট এক্সেস প্রমাণীকরণ (IETF RFC 7617): https://tools.ietf.org/html/rfc7617
- OAuth পরিচিতি: https://oauth.net/2/introduction/