असल में मेरा परिदृश्य यह है कि मेरे पास एक आंतरिक वेबसाइट है जिसके लिए एक सिंगल हार्ड-कोडेड उपयोगकर्ता नाम और पासवर्ड एक्सेस करने की आवश्यकता है (और यह नहीं हो सकता बंद कर दिया, केवल बदल गया)। मैं इस वेबसाइट को विभिन्न कारणों से एक रिवर्स प्रॉक्सी के माध्यम से उजागर कर रहा हूं (बंदरगाह को छिपा रहा हूं, यूआरएल को सरल बनाना, एनएटी को सरल बनाना आदि)।Apache2 रिवर्स प्रॉक्सी को एंड-पॉइंट पर रिवर्स करें जिसके लिए BasicAuth की आवश्यकता है, लेकिन इसे उपयोगकर्ता से छिपाना चाहते हैं
हालांकि, मैं करना चाहते हैं क्या अपाचे उपयोग करने के लिए प्रमाणीकरण को संभालने के लिए इतना है कि सक्षम हो रहा है:
- मेरे पास नहीं है हर किसी के लिए
एकलपासवर्ड देने की -
मैं एकाधिक उपयोगकर्ता नाम और अपाचे के BasicAuth -
का उपयोग कर आंतरिक उपयोगकर्ताओं के लिए पासवर्ड हो सकता है, मेरे पास पासवर्ड
संपादित करें: अमीर प्रमाणीकरण के बारे में दूसरा हिस्सा new question
यहाँ ले जाया गया है है और अधिक या कम है कि मैं क्या अब है:
<VirtualHost *:80>
ServerName sub.domain.com
ProxyPass /http://192.168.1.253:8080/endpoint
ProxyPassReverse/http://192.168.1.253:8080/endpoint
# The endpoint has a mandatory password that I want to avoid requiring users to type
# I.e. something like this would be nice (but does not work)
# ProxyPass /http://username:[email protected]:8080/endpoint
# ProxyPassReverse/http://username:[email protected]:8080/endpoint
# Also need to be able to require a password to access proxy for people outside local subnet
# However these passwords will be controlled by Apache using BasicAuth, not the ProxyPass endpoint
# Ideas?
</VirtualHost>
यह आशाजनक लग रहा है लेकिन अगर मैं गैर-स्थानीय अनुरोध नहीं करता हूं तो मैं मास्टर पासवर्ड मांगना नहीं चाहता हूं, मैं मूल एथ पासवुड सूची बनाए रखने के लिए अपाचे चाहता हूं और उपयोगकर्ताओं को कई अलग-अलग पासवर्डों में से एक के साथ एथ को अनुमति देता हूं जो एंडपॉइंट होगा कभी न देखें। यह afaik सही नहीं करता है? –
बस पहले (बिना शर्त, यानी SetEnvIf और 'localrequest') संस्करण का उपयोग करें, यानी 'RequestHeader सेट प्रमाणीकरण "मूल QWxhZGRpbjpvcGVuIHNlc2FtZQ =="'।रिवर्स प्रॉक्सी हमेशा मास्टर पासवर्ड के साथ प्रमाणित होगा, और उपयोगकर्ता आरपी से कनेक्ट करने के लिए हमेशा अन्य पासवर्ड का उपयोग करेंगे। – vladr
मैंने SetEnvIf का उपयोग करके अपने मूल सुझाव दोनों की कोशिश की और BasicAuth काम करने की कोशिश की और मुझे कोई सफलता नहीं मिली। मैं प्रॉक्सी के माध्यम से पासवर्ड को सफलतापूर्वक अक्षम कर सकता हूं, लेकिन सशर्त रूप से अनुरोध के प्रकार के आधार पर नहीं। –