এখানে Windows Server 2012 R2 চালিত IIS ওয়েবসাইটে স্বচ্ছ SSO (একক সাইন-অন) Kerberos ডোমেন ব্যবহারকারী প্রমাণীকরণ কীভাবে কনফিগার করতে হয় তার একটি ধাপে ধাপে নির্দেশিকা রয়েছে।
আপনার ওয়েব সার্ভারে IIS ম্যানেজার শুরু করুন, প্রয়োজনীয় ওয়েবসাইট নির্বাচন করুন এবং প্রমাণিকরণ-এ যান অধ্যায়. আপনি দেখতে পাচ্ছেন, শুধুমাত্র বেনামী প্রমাণীকরণ ডিফল্টরূপে সক্রিয় করা হয়। এটি নিষ্ক্রিয় করুন এবং Windows প্রমাণীকরণ সক্ষম করুন৷ ( প্রথমত, IIS সর্বদা বেনামী প্রমাণীকরণ করার চেষ্টা করে)।
Windows প্রমাণীকরণের জন্য উপলব্ধ প্রদানকারীদের তালিকা খুলুন (প্রোভাইডার৷ ) ডিফল্টরূপে, দুটি প্রদানকারী উপলব্ধ:আলোচনা করুন৷ এবং NTLM . Negotiate হল একটি ধারক যা প্রথম প্রমাণীকরণ পদ্ধতি হিসাবে Kerberos ব্যবহার করে এবং যদি প্রমাণীকরণ ব্যর্থ হয়, NTLM ব্যবহার করা হয়। এটা প্রয়োজন যে আলোচনা করুন প্রদানকারীদের তালিকায় প্রথম আসে৷
৷
পরবর্তী ধাপে পরিষেবা প্রধান নাম (SPN)-এর নিবন্ধন অন্তর্ভুক্ত ওয়েবসাইটের নামের জন্য এন্ট্রি, যা ব্যবহারকারীদের দ্বারা অ্যাক্সেস করা হবে। যদি IIS ওয়েবসাইটটি শুধুমাত্র সেই সার্ভারের নামে উপলব্ধ হতে হয়, যেখানে এটি অবস্থিত (https://server-name অথবা https://server-name.adatum.loc ), আপনাকে অতিরিক্ত SPN এন্ট্রি তৈরি করতে হবে না (AD এ সার্ভার অ্যাকাউন্টে SPN এন্ট্রি ইতিমধ্যেই বিদ্যমান)। যদি ওয়েবসাইটের ঠিকানা হোস্টের নামের থেকে আলাদা হয় বা আপনি যদি লোড ব্যালেন্সিং সহ একটি ওয়েবফার্ম তৈরি করেন, তাহলে আপনাকে সার্ভার বা ব্যবহারকারীর অ্যাকাউন্টে অতিরিক্ত SPN এন্ট্রি সংযুক্ত করতে হবে।
ধরুন, আমাদের আইআইএস সার্ভারের একটি খামার আছে। এই ক্ষেত্রে, একটি পৃথক AD অ্যাকাউন্ট তৈরি করা এবং এতে SPN এন্ট্রিগুলি আবদ্ধ করা ভাল। আমাদের ওয়েবসাইটের টার্গেট অ্যাপ্লিকেশন পুল এই অ্যাকাউন্ট থেকে শুরু করা হবে।
একটি ডোমেন অ্যাকাউন্ট তৈরি করুন iis_service . নিশ্চিত করুন যে এই বস্তুর জন্য SPN এন্ট্রিগুলি বরাদ্দ করা হয়নি (servicePrincipalName বৈশিষ্ট্য খালি)।
ধরুন, ওয়েবসাইটটিকে https://webportal-এ প্রতিক্রিয়া জানাতে হবে এবং https://webportal.adatum.loc . আমাদের এই ঠিকানাগুলি পরিষেবা অ্যাকাউন্টের SPN বৈশিষ্ট্যে উল্লেখ করতে হবে।
Setspn /s HTTP/webportal adatum\iis_service
Setspn /s HTTP/webportal.adatum.loc adatum\iis_service
এইভাবে, আমরা এই অ্যাকাউন্টটিকে Kerberos টিকেট ডিক্রিপ্ট করার অনুমতি দিই, যখন ব্যবহারকারীরা এই ঠিকানাগুলি অ্যাক্সেস করে এবং সেশনগুলিকে প্রমাণীকরণ করে।
আপনি এইভাবে অ্যাকাউন্টের SPN সেটিংস চেক করতে পারেন:
setspn /l iis_service
টিপ . Kerberos সঠিকভাবে কাজ করবে না যদি একই SPN ভিন্ন ডোমেন এন্ট্রি দ্বারা ব্যবহার করা হয়। নিম্নলিখিত কমান্ডটি ব্যবহার করে, নিশ্চিত করুন যে ডোমেনে কোনও ডুপ্লিকেট SPN নেই:
setspn –x
পরবর্তী ধাপ হল IIS অ্যাপ্লিকেশন পুলের কনফিগারেশন যা আগে তৈরি করা অ্যাকাউন্ট থেকে এটি চালু করা।
আপনার ওয়েবসাইটের অ্যাপ্লিকেশন পুল নির্বাচন করুন (আমাদের উদাহরণে, এটি ডিফল্ট অ্যাপপুল)।
উন্নত সেটিংস খুলুন এবং পরিচয়-এ যান
ApplicationPoolIdentity থেকে এটি পরিবর্তন করুন adatum\iis_service-এ .
তারপর IIS ম্যানেজারে আপনার ওয়েবসাইটে যান এবং কনফিগারেশন এডিটর নির্বাচন করুন .
ড্রপডাউন মেনুতে system.webServer> নিরাপত্তা> প্রমাণীকরণ> windowsAuthentication নির্বাচন করুন
AppPoolCredentials ব্যবহার করুন পরিবর্তন করুন সত্যে .
এইভাবে আমরা ক্লায়েন্টদের কাছ থেকে Kerberos টিকেট ডিক্রিপ্ট করার জন্য IIS-কে ডোমেন অ্যাকাউন্ট ব্যবহার করার অনুমতি দিই।
এই কমান্ডটি ব্যবহার করে IIS রিসেট করুন:
iisreset
সকল ওয়েব ফার্ম সার্ভারে একই কনফিগার করতে হবে।
Kerberos প্রমাণীকরণ পরীক্ষা করা যাক। এটি করতে, ক্লায়েন্টের ব্রাউজারে https://webportal.adatum.loc খুলুন৷
দ্রষ্টব্য . আমার ক্ষেত্রে, আমি IE11 এ একবারে প্রমাণীকরণ করতে পারিনি। আমাকে বিশ্বস্ত ওয়েবসাইটের তালিকায় ঠিকানা যোগ করতে হয়েছিল এবং বর্তমান ব্যবহারকারীর নাম এবং পাসওয়ার্ড সহ স্বয়ংক্রিয় লগইন উল্লেখ করতে হয়েছিল ব্যবহারকারী প্রমাণীকরণ -> লগইন-এ বিশ্বস্ত অঞ্চল সাইট সেটিংসে।
আপনি ফিডলার ব্যবহার করে HTTP ট্র্যাফিক নিরীক্ষণের মাধ্যমে আপনার ওয়েবসাইটে Kerberos প্রমাণীকরণ ব্যবহার করা হয়েছে তা নিশ্চিত করতে পারেন (আমরা এই সরঞ্জামটি আগে উল্লেখ করেছি)।
ফিডলার শুরু করুন এবং ব্রাউজারে লক্ষ্য ওয়েবসাইট খুলুন। উইন্ডোর বাম অংশে, ওয়েবসাইট অ্যাক্সেসের লাইন খুঁজুন। উইন্ডোর ডান অংশে পরিদর্শক ট্যাবে যান। লাইন “অনুমোদন শিরোনাম (আলোচনা) একটি Kerberos টিকিট রয়েছে বলে মনে হচ্ছে ” দেখায় যে IIS ওয়েবসাইটে প্রমাণীকরণের জন্য Kerberos ব্যবহার করা হয়েছে৷
৷