Proxy-Authorization በGo forward proxy ውስጥ መተንተን
Proxy-Authorizationን በGo forward proxy ውስጥ ለየብቻ ይተንትኑ፣ የorigin Authorization ራስጌን ጠብቀው።
በGo forward proxy ውስጥ r.BasicAuth የAuthorization ራስጌን ያነባል፤ ይህ የመድረሻ ድረ-ገጹ መግቢያ ነው። የproxyው የራሱ መረጃ መለያ በProxy-Authorization ይመጣል።
ትንሽ አስማሚ አገናኝ ዋናውን ጥያቄ ሳይቀይር የጋራ ተንታኙን እንደገና መጠቀም ይችላል፦
func proxyBasicAuth(r *http.Request) (string, string, bool) {
headers := make(http.Header)
headers.Set("Authorization", r.Header.Get("Proxy-Authorization"))
return (&http.Request{Header: headers}).BasicAuth()
}
ይህ ክፍል net/http ይጠቀማል። የተተነተኑ እሴቶችንና የመተንተን ስኬት ምልክት ይመልሳል፤ መለያውን አያረጋግጥም። ውጤቱን ለproxyው ታሳቢ የሆነው የመረጃ መለያ አረጋጋጭ ያስተላልፉ።
ማረጋገጫው ካልተሳካ 407 ከተገቢው Proxy-Authenticate ፈተና ጋር መልሰው ያንን ጥያቄ ማካሄድ ያቁሙ። የመድረሻ ግንኙነት ከመክፈት ወይም CONNECT ቱነል ከመቀበል በፊት ያረጋግጡ።
መረጃ መለያውን ከተቀበሉ በኋላ ከመደበኛ ማስተላለፍ በፊት የproxyውን Proxy-Authorization ራስጌ ይጠቀሙ። የመጀመሪያውን Authorization መስክ ለorigin ጠብቁ። የላይኛው ወላጅ proxy ካለ ይህን የደንበኛ መረጃ መለያ በአጋጣሚ ከመቀበል ይልቅ የራሱ ሆን ተብሎ የተዘጋጀ የማረጋገጫ አማራጭ ያስፈልገዋል።