Ṣàyẹ̀wò Proxy-Authorization nínú Go forward proxy
Ṣàyẹ̀wò Proxy-Authorization lọ́tọ̀ọ̀tọ̀ nínú Go forward proxy kí o sì pa àkọsílẹ̀ Authorization ti orísun mọ́.
Nínú Go forward proxy, r.BasicAuth ń ka àkọsílẹ̀ Authorization, èyí tí ó jẹ́ ti ìwọlé sí ojúlé ayélujára tí a ń lọ. Àwọn ẹ̀rí proxy fúnra rẹ̀ wá nínú Proxy-Authorization.
Ẹ̀rọ àdáni kékeré lè tún lo parser gbogbogbò náà láìyí ìbéèrè àkọ́kọ́ padà:
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()
}
Ẹ̀ka yìí ń lo net/http. Ó ń dá àwọn iye tí a ṣàyẹ̀wò padà àti àmì àṣeyọrí ìṣàyẹ̀wò; kò ṣe ìjẹ́rìí àkọsílẹ̀ náà. Fi àbájáde náà fún ẹni tí ó ń ṣàyẹ̀wò ẹ̀rí tí proxy fẹ́.
Bí ìjẹ́rìí bá kùnà, dá 407 pẹ̀lú ìpèníjà Proxy-Authenticate tí ó yẹ padà kí o sì dá ìṣiṣẹ́ ìbéèrè yẹn dúró. Ṣe ìjẹ́rìí kí o tó ṣí ìsopọ̀ sí ibi tí a ń lọ tàbí kí o tó gba CONNECT tunnel.
Lẹ́yìn gbígba àwọn ẹ̀rí náà, lo àkọsílẹ̀ Proxy-Authorization ti proxy fúnra rẹ̀ kí o tó ṣe ìfiránṣẹ́ déédé. Pa àkọsílẹ̀ Authorization àkọ́kọ́ mọ́ fún orísun. Bí proxy òbí tí ó wà lókè bá wà, ó nílò ètò ìjẹ́rìí tirẹ̀ tí a mọ̀ọ́mọ̀ ṣe dípò gbígba ẹ̀rí alábàárò yìí lẹ́ẹ̀kọ̀ọ̀kan.