Kuidas parandada Gitit, kes alati küsib kasutajate volitusi HTTP (S) autentimiseks


Andmetele juurdepääsu saamiseks või turvaliseks edastamiseks ilma kasutajanime ja parooli sisestamata.

Kuid HTTP (S) abil palub iga ühendus sisestada oma kasutajanime ja parooli (kui Git vajab konkreetse URL-i konteksti jaoks autentimist) - Githubi kasutajad teavad seda hästi.

Selles artiklis me näitame teile, kuidas parandada Gitit, kes alati nõuab HTTP (S) kaudu juurdepääsuks kasutaja mandaate. Selgitame erinevaid viise, kuidas takistada Gitil HTTP (S) kaudu kaughoidlaga suheldes korduvalt kasutajanime ja parooli küsida.

Kuidas Git Linuxi installida

Kui teie süsteemis pole Git-paketti installitud, käivitage selle installimiseks oma Linuxi distributsiooni jaoks sobiv käsk (vajadusel kasutage käsku Sudo).

$ sudo apt install git      [On Debian/Ubuntu]
# yum install git           [On CentOS/RHEL/Fedora]
$ sudo zypper install git   [On OpenSuse]
$ sudo pacman -S git        [On Arch Linux]

Giti kasutajanime ja parooli sisestamine kaug-URL-i

Nagu me varem mainisime, vajab Giti kaughoidla kloonimisel HTTP (S) kaudu iga ühendus kasutajanime ja parooli, nagu näidatud.

Selleks, et Git ei küsiks teie kasutajanime ja parooli, võite sisestada URL-i sisselogimisandmed, nagu näidatud.

$ sudo git clone https://username:[email /username/repo_name.git
OR
$ sudo git clone https://username:[email /username/repo_name.git local_folder

Selle meetodi peamine puudus on see, et teie kasutajanimi ja parool salvestatakse Shelli ajaloofaili käsku.

samuti kohaliku kausta all olevas failis .git/config, mis kujutab endast turvariski.

$ cat .git/config

Märkus. Githubi kasutajate jaoks, kes on lubanud kaheastmelise autentimise või pöörduvad organisatsiooni, mis kasutab SAML-i ühekordse sisselogimise kasutamist, peate HTTPS Giti parooli sisestamise asemel looma ja kasutama isikliku juurdepääsuloa (nagu näidise väljundites näidatud) selles juhendis). Isikliku juurdepääsu loa loomiseks minge Githubis menüüsse Seaded => Arendaja seaded => Isiklikud juurdepääsuload.

Kaug-Giti hoidla kasutajanime ja parooli salvestamine kettale

Teine meetod on kasutada Giti mandaatide abistajat, et salvestada oma kasutajanimi ja parool kettale tavalisse faili, nagu näidatud.

$ git config credential.helper store				
OR
$ git config --global credential.helper store		

Nüüdsest kirjutab Git esmakordsel kasutamisel iga URL-i konteksti mandaadid faili ~/.git-credentials. Selle faili sisu vaatamiseks võite kasutada kassi käsku, nagu näidatud.

$ cat  ~/.git-credentials

Järgmiste sama URL-i konteksti käskude jaoks loeb Git teie kasutaja mandaadid ülaltoodud failist.

Täpselt nagu eelmine meetod, on ka see kasutajate volituste edastamine Gitile ebaturvaline, kuna salvestusfail on krüpteerimata ja seda kaitsevad ainult standardsed failisüsteemi õigused.

Kolmandat allpool selgitatud meetodit peetakse turvalisemaks.

Vahemällu salvestamine Git kaughoidla kasutajanimi ja parool

Viimasena, kuid mitte vähem tähtsana, saate ka Giti mandaatide abistaja abil oma volitused ajutiselt mõnda aega mällu salvestada. Selleks väljastage järgmine käsk.

$ git config credential.helper cache
OR
$ git config --global credential.helper cache

Pärast ülaltoodud käsu käivitamist küsib Git esimest korda privaatsesse kaughoidlasse pääsemiseks Git teie kasutajanime ja parooli ning salvestab selle mõnda aega mällu.

Vaikimisi vahemällu salvestamise aeg on 900 sekundit (või 15 minutit) ja pärast seda palub Git teil uuesti oma kasutajanime ja parooli sisestada. Saate seda muuta järgmiselt (1800 sekundit = 30 minutit või 3600 sekundit = 1 tund).

$ git config --global credential.helper 'cache --timeout=18000'
OR
$ git config --global credential.helper 'cache --timeout=36000'

Lisateavet Giti ja volituste abistajate kohta leiate nende man-lehtedelt.

$ man git
$ man git-credential-cache
$ man git-credential-store

Kas sellest juhendist oli abi? Andke meile sellest teada allpool oleva tagasisidevormi kaudu. Võite ka jagada selle teema kohta küsimusi või mõtteid.