মিডল-টিয়ার সার্ভারে নেটওয়ার্ক শেয়ার ব্যবহারকারী সার্ভিস অ্যাক্সেস করার সময়, ব্যবহারকারীদের শংসাপত্রের জন্য প্রম্পট করা হয়, এবং অবশেষে অ্যাক্সেস ডেনাইড এরর দেখা দেয়। আজকের পোস্টে আমরা কয়েকটি কেস সিনারিও উপস্থাপন করব, কারণ চিহ্নিত করব এবং তারপর সম্ভাব্য ওয়ার্কঅরাউন্ড দেব উইন্ডোজ ১০-এ কেন CIFS-এর জন্য কনস্ট্রেইনড ডেলিগেশন ACCESS_DENIED এরর দিয়ে ব্যর্থ হয়।
Common Internet File System (CIFS) হলো একটি ফাইল-শেয়ারিং প্রোটোকল যা নেটওয়ার্ক সার্ভার ফাইল এবং সার্ভিস অনুরোধ করার জন্য একটি ওপেন এবং ক্রস-প্ল্যাটফর্ম মেকানিজম প্রদান করে। CIFS মাইক্রোসফটের Server Message Block (SMB) প্রোটোকলের উন্নত সংস্করণের ওপর ভিত্তি করে ইন্টারনেট এবং ইন্ট্রানেট ফাইল শেয়ারিংয়ের জন্য।
উইন্ডোজে CIFS-এর জন্য কনস্ট্রেইনড ডেলিগেশন ব্যর্থ
আপনি এই সমস্যা মুখোমুখি হবেন যদি ব্যবহারকারী শংসাপত্রের জন্য প্রম্পট করা হয়, এবং অ্যাক্সেস অবশেষে অ্যাক্সেস ডেনাইড এরর দিয়ে ব্যর্থ হয় নিচের তিনটি সিনারিওর ওপর ভিত্তি করে।
সিনারিও ১
- IIS ওয়েবসাইট হোম ডিরেক্টরি রিমোট শেয়ারকে পয়েন্ট করে পাস-থ্রু অথেন্টিকেশন এবং CIFS-এর জন্য কনস্ট্রেইনড ডেলিগেশন কনফিগার করা থাকা অবস্থায় সেট আপ করা আছে।
- সেই শেয়ার অ্যাক্সেসকারী IIS অ্যাপ্লিকেশন পুল সার্ভিস অ্যাকাউন্টের আইডেন্টিটিয়ে চলছে।
- ডোমেন অ্যাকাউন্ট ফাইল সার্ভারে CIFS সার্ভিসের জন্য ডেলিগেশনের জন্য ট্রাস্টেড।
সিনারিও ২
- ওয়েব অ্যাপ একজন ব্যবহারকারী হিসেবে ফাইল সার্ভার অ্যাক্সেস করার চেষ্টা করছে।
- সেই শেয়ার অ্যাক্সেসকারী IIS অ্যাপ্লিকেশন পুল সার্ভিস অ্যাকাউন্টের আইডেন্টিটিয়ে চলছে। ডোমেন অ্যাকাউন্ট ফাইল সার্ভারে CIFS সার্ভিসের জন্য ডেলিগেশনের জন্য ট্রাস্টেড।
- সার্ভিস অ্যাকাউন্টের জন্য ফাইল সার্ভারে CIFS-এর জন্য কনস্ট্রেইনড ডেলিগেশন কনফিগার করা আছে।
সিনারিও ৩
- ক্লায়েন্ট থেকে অ্যাক্সেস করা যেকোনো সার্ভার-সাইড অ্যাপ্লিকেশন রিমোট শেয়ার অ্যাক্সেস করছে একজন ব্যবহারকারী হিসেবে।
- সার্ভার-সাইড অ্যাপ্লিকেশন একটি সার্ভিস অ্যাকাউন্টের কনটেক্সটে চলছে।
- সার্ভিস অ্যাকাউন্ট ডেলিগেশনের জন্য ট্রাস্টেড এবং ফাইল সার্ভারের জন্য CIFS ডেলিগেশন কনফিগার করা আছে।
এটি MrxSmb 2.0 এবং কেরবেরোসের মধ্যে একটি সমস্যা চিহ্নিত করা হয়েছে যখন কনস্ট্রেইনড ডেলিগেশন জড়িত।
এই সমস্যা সমাধানের জন্য মাইক্রোসফট দুটি ওয়ার্কঅরাউন্ড অফার করে।
ওয়ার্কঅরাউন্ড ১
সার্ভিস অ্যাকাউন্টের বদলে মেশিন অ্যাকাউন্ট ব্যবহার করুন অ্যাপ্লিকেশনের আইডেন্টিটি হিসেবে যেগুলো CIFS-এর জন্য কনস্ট্রেইনড ডেলিগেশন পারফর্ম করবে। ডোমেন ফাংশনাল লেভেল Windows Server 2003, Windows Server 2008, বা Windows Server 2008 R2 হলে কনস্ট্রেইনড ডেলিগেশন কনফিগার করুন।
আপনার ওয়েব সার্ভারের ডোমেনের জন্য ডোমেন কন্ট্রোলারে নিচের কাজগুলো করুন:
- Start > Administrative Tools > Active Directory Users and Computers-এ ক্লিক করুন।
- ডোমেন এক্সপ্যান্ড করুন, এবং তারপর Computers ফোল্ডার এক্সপ্যান্ড করুন।
- ডান পেইনে, ওয়েব সার্ভারের কম্পিউটার নামে রাইট-ক্লিক করুন, Properties সিলেক্ট করুন, এবং Delegation ট্যাবে ক্লিক করুন।
- Trust this computer for delegation to specified services only চেকবক্স সিলেক্ট করুন।
- নিশ্চিত করুন Use Kerberos only সিলেক্ট করা আছে, এবং OK ক্লিক করুন।
- Add button-এ ক্লিক করুন।
- Add Services ডায়লগ বক্সে, Users or Computers-এ ক্লিক করুন, এবং ফাইল সার্ভারের নাম ব্রাউজ করুন বা লিখুন যা IIS থেকে ব্যবহারকারীর শংসাপত্র গ্রহণ করবে।
- OK ক্লিক করুন।
- Available Services লিস্টে, CIFS সার্ভিস সিলেক্ট করুন।
- OK ক্লিক করুন।
ওয়ার্কঅরাউন্ড ২
এই ওয়ার্কঅরাউন্ড পরামর্শ করা হয় না কারণ এটি কম্পিউটার অ্যাকাউন্টে Use any authentication protocol ডেলিগেশন আবশ্যক। যদি Use any authentication protocol অপশনটি সিলেক্ট করা থাকে, অ্যাকাউন্টটি প্রোটোকল ট্রানজিশনসহ কনস্ট্রেইনড ডেলিগেশন ব্যবহার করছে।
আপনি যদি আবশ্যক হয় অ্যাপ্লিকেশনের আইডেন্টিটি হিসেবে সার্ভিস অ্যাকাউন্ট এবং/অথবা ডোমেন অ্যাকাউন্ট ব্যবহার করতে, তবে নিচের کارগুলো করুন:
স্টেপ ১
- Start > Administrative Tools > Active Directory Users and Computers-এ ক্লিক করুন।
- ডোমেন এক্সপ্যান্ড করুন, এবং তারপর Computers ফোল্ডার এক্সপ্যান্ড করুন।
- ডান পেইনে, ওয়েব সার্ভারের কম্পিউটার নামে রাইট-ক্লিক করুন, Properties সিলেক্ট করুন, এবং Delegation ট্যাবে ক্লিক করুন।
- Trust this computer for delegation to specified services only চেকবক্স সিলেক্ট করুন।
- নিশ্চিত করুন Use any authentication protocol সিলেক্ট করা আছে।
- OK ক্লিক করুন।
- Add button-এ ক্লিক করুন।
- Add Services ডায়লগ বক্সে, Users or Computers-এ ক্লিক করুন, এবং ফাইল সার্ভারের নাম ব্রাউজ করুন বা লিখুন যা IIS থেকে ব্যবহারকারীর শংসাপত্র গ্রহণ করবে।
- OK ক্লিক করুন।
- Available Services লিস্টে, CIFS service সিলেক্ট করুন।
- OK ক্লিক করুন।
স্টেপ ২
- বাম পেইনে, Users ফোল্ডার এক্সপ্যান্ড করুন।
- ডান পেইনে, অ্যাপ্লিকেশন পুলের আইডেন্টিটি হওয়া সার্ভিস অ্যাকাউন্টে রাইট-ক্লিক করুন, Properties সিলেক্ট করুন, এবং Delegation ট্যাবে ক্লিক করুন।
- Trust this computer for delegation to specified services only চেকবক্স সিলেক্ট করুন।
- নিশ্চিত করুন Use Kerberos only সিলেক্ট করা আছে।
- OK ক্লিক করুন।
- Add button-এ ক্লিক করুন।
- Add Services ডায়লগ বক্সে, Users or Computers-এ ক্লিক করুন, এবং ফাইল সার্ভারের নাম ব্রাউজ করুন বা লিখুন যা IIS থেকে ব্যবহারকারীর শংসাপত্র গ্রহণ করবে।
- OK ক্লিক করুন।
- Available Services লিস্টে, CIFS service সিলেক্ট করুন।
- OK ক্লিক করুন।
আশা করি এই পোস্ট সাহায্য করবে।