আমরা আমাদের গ্রাহকদের একের প্রমাণীকরণের জন্য ক্লায়েন্ট সাইড শংসাপত্রগুলি ব্যবহার করছি।
আমাদের সেটআপটি হ'ল: জাজানো অ্যাপ্লিকেশনটির সামনে আমাদের এনগিনেক্স রয়েছে। আমাদের nginx কনফিগ, আমরা কাজ (প্রকৃত ক্লায়েন্ট-সাইড-শংসাপত্র যাচাই পেতে প্রয়োজনীয় পরামিতি আছে ssl_client_certificate, ssl_verify_clientইত্যাদি) এবং
uwsgi_param X-Client-Verify $ssl_client_verify;
uwsgi_param X-Client-DN $ssl_client_s_dn;
uwsgi_param X-SSL-Issuer $ssl_client_i_dn;
যার অর্থ হ'ল আমরা আমাদের জ্যাঙ্গো অ্যাপ্লিকেশনে সেই পরিবর্তনশীলগুলির মান পাই। জ্যাঙ্গো অ্যাপ্লিকেশনটি তখন কোন ব্যবহারকারী তাদের সংযোগ করছে এবং তাদের অনুমোদন দিচ্ছে তা সনাক্ত করতে এই তথ্য ব্যবহার করে।
হঠাৎ করে আমরা শংসাপত্রগুলি ব্যবহার করে লোকেরা লগ ইন করতে না পারার বিষয়ে প্রতিবেদন পেতে শুরু করলে আমরা কোনও সমস্যা ছাড়াই বেশ কয়েক মাস ধরে এটি সফলভাবে ব্যবহার করছি। দেখা গেল যে স্ল্যাশ-বিচ্ছিন্ন বিন্যাস থেকে, $ssl_client_s_dnএবং $ssl_client_i_dnমানগুলির বিন্যাসটি পরিবর্তিত হয়েছিল:
/C=SE/O=Some organziation/CN=Some CA
কমা-বিচ্ছিন্ন বিন্যাসে:
CN=Some CA,O=Some organization,C=SE
এটি সমাধান করা সহজ ছিল, তবে কেন তা বুঝতে পারছি না। সুতরাং আমার প্রশ্নগুলি আসলে:
- কোথা থেকে
$ssl_client_s_dnআসবে মান ? এটি nginx দ্বারা সেট করা হয়? ক্লায়েন্ট? - এই মানটি যে ফর্ম্যাটটির থাকতে পারে তার কোনও ডকুমেন্টেশন / স্পেসিফিকেশন রয়েছে এবং এর কোনও নাম আছে?