በ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 ካለ ይህን የደንበኛ መረጃ መለያ በአጋጣሚ ከመቀበል ይልቅ የራሱ ሆን ተብሎ የተዘጋጀ የማረጋገጫ አማራጭ ያስፈልገዋል።

ተዛማጅ ጽሑፎች