„Python“

„Python getpass“ modulis

„Python getpass“ modulis
Mes visi saugome paslaptis, ar ne? Net mūsų programos tai daro. Svarbiausia paslaptyje yra tai, kad turime jas saugiai ir slaptai paslėpti nuo subjektų, kurie neturėtų turėti prieigos prie šių slaptų raktų, slaptažodžių frazių ar slaptažodžio, kurie leis vartotojams padaryti tai, ko jiems nėra suteikta teisė. To paties būk atsargus, kai iš savo programų vartotojų priimame slaptus raktus, slaptažodžių frazes ar slaptažodį, pvz., Slapta eilutė neturėtų būti atkartojama, kai įvedame juos ekrane. „Python“ getpass modulis leidžia mums tai padaryti efektyviai.

„Python getpass“ modulis

Naudojant „Python“ getpass modulį, galima priimti slaptažodžius „Python“ programose ir saugoti slaptažodžių frazes. Mes pamatysime slaptažodžių saugojimo pavyzdžius ir tai, kaip mes galime srautus perduoti iš terminalo į tekstinius failus. Pradėkime nuo kelių pavyzdžių.

„Python getpass“ pagrindinis pavyzdys

Šiame pavyzdyje mes pradėsime nuo labai paprasto pavyzdžio, kaip mes galime priversti vartotoją įvesti slaptažodį terminale ir įsitikinti, kad slaptažodis nėra pakartotas komandų eilutėje. Čia yra ta pati programa:

importo kelialapis
bandyti:
slaptažodis = getpass.getpass ()
išskyrus ex išimtį:
spausdinti („Įvyko klaida:“, buvęs)
Kitas:
spausdinti ('Įvestas slaptažodis:', slaptažodis)

Štai ką mes grąžiname naudodami šią komandą:

Gaukite slaptažodžio paslaptį

Eilutės slaptažodis yra numatytasis raginimas, kurį pateikia python scenarijus. Kitame pavyzdyje tai pritaikysime tam, ką norėtume naudoti savo programose.

„Python getpass“ su pasirinktine eilute

Šiame pavyzdyje pritaikysime raginimą, kuris bus rodomas vartotojui, kai „Python“ paprašys slaptos frazės:

importo kelialapis
pwd = getpass.getpass (prompt = 'Kurioje geriausia aplankyti Ubuntu salą?„)
jei pwd == 'LinuxHint':
spausdinti („Žinoma!„)
Kitas:
spausdinti ('Kur tai?„)

Pažiūrėkime šios komandos išvestį:

Pasirinktinis raginimas gauti slaptažodį

Ši komanda yra naudinga, kai norite paprašyti kai kurių slaptafrazių, išskyrus slaptažodžio eilutes.

Perduokite slaptažodį į kitą srautą

The getpass modulis leidžia mums perduoti slaptažodį, kurį vartotojas įveda į kitus srautus, pvz., failą, žurnalus ar bet ką, kas gali būti pateikiama kaip srautas iš tikrųjų. Mes tiesiog turime perduoti srautą pačiai funkcijai:

importo kelialapis
importuoti sistemas
pwd = getpass.getpass (srautas = sys.stderr)
spausdinti ('Įvestas slaptažodis:', pwd)

Štai ką mes grąžiname naudodami šią komandą:

Srauto srautas į kitus srautus

Slaptažodžių gavimas be terminalo

„Python“ getpass moduliui reikia tty, kurį galima valdyti a terminai. Tai taikoma, kai dirbame su kai kuriomis „Unix“ sistemomis. Tokiu būdu aidas gali būti išjungtas. Kai vykdome šį pavyzdį ne „Unix“ kompiuteryje:

aidas "netamsus" | python3 getpass_defaults.py

Štai ką mes grąžiname naudodami šią komandą:

termios komanda

Vykdydami scenarijų ne „Unix“ kompiuteryje, išvesties eilutė buvo tai, ką mes įvedėme. Priešingu atveju mes būtume paprasčiausiai pamatę ne tamsu Stygos kaip terminalo išvestis.

Skaitykite daugiau apie teletype terminalai čia.

Išvada

Šioje pamokoje mes apžvelgėme, kaip galime naudotis „Python“ getpass modulis, skirtas efektyviai valdyti slaptas slaptafrazes mūsų „Python“ programose.

Pelės kairiuoju pelės mygtuku mygtukas neveikia „Windows 10“
Jei naudojate specialią pelę su savo nešiojamuoju kompiuteriu arba staliniu kompiuteriu, tačiau neveikia pelės kairysis mygtukas dėl tam tikrų priežas...
Žymeklis peršoka arba juda atsitiktinai, kai rašote „Windows 10“
Jei pastebite, kad pelės žymeklis peršoka arba juda pats, automatiškai, atsitiktinai, kai vedate „Windows“ nešiojamąjį kompiuterį ar kompiuterį, kai k...
Kaip pakeisti pelės ir jutiklinių plokščių slinkimo kryptį sistemoje „Windows 10“
Pelė ir Jutiklinė dalisTai ne tik palengvina skaičiavimus, bet ir efektyvesnį bei mažiau laiko reikalaujantį. Mes neįsivaizduojame gyvenimo be šių pri...