វិភាគ Proxy-Authorization ក្នុង forward proxy Go
វិភាគ Proxy-Authorization ដោយឡែកក្នុង forward proxy Go ខណៈរក្សា Authorization header របស់ប្រភព។
ក្នុង forward proxy Go, r.BasicAuth អាន Authorization header ដែលជាកម្មសិទ្ធិរបស់ការចូលគេហទំព័រគោលដៅ។ ព័ត៌មានសម្គាល់ខ្លួនរបស់ proxy ខ្លួនវាមកក្នុង Proxy-Authorization។
អាដាប់ទ័រតូចមួយអាចប្រើ parser សាធារណៈឡើងវិញដោយមិនផ្លាស់ប្តូរសំណើដើម៖
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 challenge សមស្រប ហើយបញ្ឈប់ដំណើរការសំណើនោះ។ ផ្ទៀងផ្ទាត់មុនពេលបើកការតភ្ជាប់ទៅគោលដៅ ឬទទួលយក CONNECT tunnel។
បន្ទាប់ពីទទួលយកព័ត៌មានសម្គាល់ខ្លួន សូមប្រើ Proxy-Authorization header របស់ proxy ខ្លួនវាមុនការបញ្ជូនធម្មតា។ រក្សា Authorization field ដើមសម្រាប់ប្រភព។ ប្រសិនបើមាន proxy មេនៅខាងលើ វាត្រូវការការរៀបចំផ្ទៀងផ្ទាត់ដោយចេតនាដោយខ្លួនឯង ជាជាងទទួលព័ត៌មានសម្គាល់ខ្លួនរបស់អតិថិជននេះដោយចៃដន្យ។