"বৈধ-ব্যবহারকারীর প্রয়োজন নেই" সত্ত্বেও কিভাবে মোড_আউথ_কারবকে তার কাজটি করতে বলুন


11

আমি অ্যাপাচে Mod_auth_kerb ব্যবহার করে একটি এসএসও প্রমাণীকরণ প্রয়োগ করেছি । আমার কনফিগারেশনটি দেখতে এমন দেখাচ্ছে:

<Location /login/ >
    AuthType Kerberos
    AuthName "Kerberos Login"
    KrbMethodNegotiate on
    KrbAuthoritative on
    KrbVerifyKDC on
    KrbAuthRealm D.ETHZ.CH
    Krb5Keytab /etc/HTTP.keytab
    KrbSaveCredentials on
    RequestHeader set KERBEROS_USER %{REMOTE_USER}s
</Location>

আমার সমস্যাটি হ'ল require valid-user, মোড_আউথ_কারব ছাড়াও ব্যবহারকারীকে প্রমাণীকরণ করার চেষ্টা করে না এবং KERBEROS_USERশেষ পর্যন্ত হয় (null)। যদি আমি যুক্ত করি তবে require valid-userব্যবহারকারী ব্রাউজারটি সমর্থন করলে স্বয়ংক্রিয়ভাবে প্রমাণীকরণ করা হবে তবে ব্রাউজারটি কার্বেরোস নেগোসিয়েটকে সমর্থন না করলে একটি কুৎসিত মডেল লগইন ফর্ম (আলা এইচটিটিপি বেসিক অ্যাথ) দেখায়।

আমি যেটি অর্জন করতে চাই তা হ'ল যদি কোনও ব্যবহারকারী পরিদর্শন করে /login/, mod_auth_kerb ব্যবহারকারীকে কার্বেরোস নেগোটিয়ার মাধ্যমে প্রমাণীকরণের চেষ্টা করে। যদি এটি ব্যর্থ হয় তবে একটি সাধারণ এইচটিএমএল লগইন ফর্মটি ব্যবহারকারীর সামনে উপস্থাপন করা হবে।

এপাচি / মোড_আউথ_কারবকে কী এভাবে কনফিগার করা সম্ভব?


আপনার লগইন ফর্ম সরবরাহ এবং যথাযথ ত্রুটি পরিচালনার ব্যতীত, এটি সঠিক (প্রত্যাশিত) আচরণ behavior
বিলথোর

উত্তর:


12

আমি যখন এটি একটি সহজ একক-সাইনন সরঞ্জাম (Mod_auth_tkt এর সাথে কার্বেরোসকে একীভূত করতে) তৈরি করেছি তখনই আমি এটি করেছি। এর জন্য কিছুটা চিকনারি দরকার:

  • / ওয়েবআউথ / লগইন একটি require valid-userনির্দেশ দ্বারা সুরক্ষিত ছিল । যদি কেউ বৈধ কার্বেরোস শংসাপত্রগুলির সাথে সংযুক্ত থাকে তবে আমরা তাদের ব্যবহারকারী নাম REMOTE_USER থেকে পেয়েছি, তাদের একটি প্রমাণীকরণ কুকি দিয়েছি এবং তাদের পথে পাঠিয়েছি।

  • অ্যাপাচি কনফিগারেশনে ErrorDocumentঅননুমোদিত ব্যবহারকারীদেরকে / ওয়েবআউথ / প্রয়োজনীয়_আথেনটিকেশনে পুনঃনির্দেশ করার জন্য একটি অনুরোধ ব্যবহার করা হয়েছিল :

    ত্রুটি ডকুমেন্ট 401 / ওয়েবআউথ / প্রয়োজনীয়_আথেনটিকেশন

    এটি নিম্নলিখিত ক্রিয়া সম্পাদন করবে:

    • একটি 401 ফলাফলের কোডটি ফেরত দিন (সাধারণত, ত্রুটিযুক্ত ডকুমেন্টগুলি আপনার ফলাফলের কোডটি খায়) এবং
    • একটি লগইন ফর্ম উপস্থাপন করুন।
  • লগইন ফর্মটি আপনি যা প্রত্যাশা করেছেন ঠিক তেমনটাই করবে: একটি ব্যবহারকারীর নাম / পাসওয়ার্ড ফর্ম উপস্থাপন করুন, বৈধতা দিন এবং তারপরে তাদেরকে কুকি দিন।


একটি আকর্ষণীয় সমাধানের জন্য +1।
স্যাম হালিকেকে

দুর্দান্ত, এটি পুরোপুরি কাজ করে!
বেনিয়ামিন ওহলওয়েড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.