Flask Academy · Oppitunti

Lataa salaisuudet ympäristömuuttujista

Pidä avaimet poissa lähdekoodista ympäristömuuttujien avulla.

Oppitunti 2/413 vaihetta

Lataa salaisuudet ympäristömuuttujista on ilmainen Flask Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Flask Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Flask Academy-kurssilla on yhteensä 4 oppituntia.

Salaisuudet eivät kuulu koodiin

Lähdekooditiedostoihin kirjoitetut API-avaimet ja salasanat vuotavat heti, kun pusket koodin Gitiin. Pidä secrets-salaisuudet kokonaan repositorion ulkopuolella.

Twelve-Factor-ajatus

twelve-factor -lähestymistapa tallentaa asetukset ympäristöön, joten sama koodi voidaan julkaista kaikkialla ilman muokkauksia.

Lue muuttuja os.environilla

Lue muuttuja käyttämällä os.environ-rakennetta. Se aiheuttaa selkeän virheen, jos avain puuttuu, mikä sopii hyvin pakollisille salaisuuksille.

import os
key = os.environ["SECRET_KEY"]

Valinnaiset arvot get-metodilla

Käytä os.environ.get -metodia valinnaisille asetuksille ja anna oletusarvo, jotta sovellus käynnistyy myös kehitysympäristössä.

debug = os.environ.get("DEBUG", "0")

Liitä se config-luokkaan

Lue ympäristömuuttujat suoraan Config-luokan sisällä, jotta jokainen ympäristö saa salaisuutensa järjestelmästä eikä lähdekoodista.

SECRET_KEY = os.environ.get("SECRET_KEY")

Aseta muuttuja komentotulkissa

Suorita tietokoneellasi export ennen käynnistystä. Prosessi perii muuttujan, ja Flask ottaa sen käyttöön.

export SECRET_KEY=super-secret

Kaikki on merkkijonoa

Ympäristömuuttujat saapuvat strings-merkkijonoina. Muunna numerot ja totuusarvot itse, sillä Pythonissa merkkijono "0" on totuusarvoltaan tosi.

port = int(os.environ.get("PORT", "5000"))

Epäonnistu nopeasti puuttuvien salaisuuksien vuoksi

Tuotannossa puuttuvan salaisuuden pitäisi kaataa sovellus käynnistyksen yhteydessä, ei kesken toiminnan. Fail fast, jotta ongelma näkyy heti selvästi.

if not SECRET_KEY:
    raise RuntimeError("SECRET_KEY required")

Missä alusta asettaa ne

Herokun, Dockerin ja Kubernetesin kaltaiset isännät välittävät env vars -ympäristömuuttujat käyttöönoton aikana, joten mikään salaisuus ei päädy imageen.

Luo vahva avain

SECRET_KEY-avaimen tulee olla pitkä ja satunnainen. Luo se käyttämällä secrets.token_hex -metodia ja tallenna se ympäristömuuttujaksi.

import secrets
secrets.token_hex(32)

Älä koskaan kirjaa salaisuutta lokiin

Vältä secrets-salaisuuksia sisältävien asetusten tulostamista. Yksikin ylimääräinen lokirivi hallintapaneelissa paljastaa suojaamasi arvon.

Pikatarkistus

Miten sinun tulisi käsitellä pakollista salaisuutta, joka puuttuu tuotannossa?

Kertaus: ympäristömuuttujien salaisuudet

Luit salaisuudet os.environ-rakenteesta, annoit valinnaisille oletusarvot, muunsit tyypit ja epäonnistuit nopeasti, kun pakollisia avaimia puuttui. 🔐

Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Lataa salaisuudet ympäristömuuttujista” ilmainen?

Kyllä – oppitunnin ”Lataa salaisuudet ympäristömuuttujista” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Flask Academy-kurssin, päivitä CoddyKit PROhon. Flask Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Lataa salaisuudet ympäristömuuttujista”?

Pidä avaimet poissa lähdekoodista ympäristömuuttujien avulla. Harjoittelet Flask Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Flask Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Flask Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Lataa salaisuudet ympäristömuuttujista”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Flask Academy-oppitunnilla?

Kyllä. Jokainen Flask Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Ympäristökohtaiset config-luokat
  2. Lataa salaisuudet ympäristömuuttujista
  3. Käytä dotenvia kehityksessä
  4. Vaihda debug- ja feature flag -asetuksia
← Takaisin: Flask Academy