Siirry sisältöön

Verkkotunnus ja HTTPS

Tuotannossa basedb on tarjoiltava HTTPS:llä: sen istuntoevästeet ovat Secure-evästeitä ja niissä on etuliite __Host-, ja selain hyväksyy ne HTTP:n kautta vain localhost-osoitteessa.

Kuva tarjoilee jo kaiken yhdestä osoitteesta – käyttöliittymän, API:n polussa /api ja MCP-palvelimen polussa /mcp. Jäljelle jää vain sen sijoittaminen HTTPS-välityspalvelimen taakse: docker-compose.yml tarjoaa sellaisen, Caddyn, joka hankkii ja uusii Let’s Encrypt -varmenteensa itse.

  1. Osoita verkkotunnuksesi DNS palvelimeen; avaa portit 80 ja 443.

  2. .env-tiedostossa:

    Fenêtre de terminal
    BASEDB_DOMAIN=basedb.example.com
    BASEDB_PUBLIC_URL=https://basedb.example.com
  3. Käynnistä https-profiililla:

    Fenêtre de terminal
    docker compose --profile https up -d

Portti 3000 julkaistaan edelleen vain osoitteeseen 127.0.0.1: kaikki ulkoinen liikenne kulkee Caddyn kautta.

  • BASEDB_DOMAIN: verkkotunnus, jolle Caddy pyytää varmenteen.
  • BASEDB_PUBLIC_URL: OIDC-kirjautumisen paluuosoite, jota verrataan merkki merkiltä tunnistautumispalvelun puolelle rekisteröityyn osoitteeseen.
  • Caddy asettaa X-Forwarded-For-otsakkeen vierailijan todellisen osoitteen perusteella, ja basedb säilyttää sen, kun se tulee yksityisestä verkosta: API:n nopeusrajoitukset (kirjautuminen, jaetut lomakkeet) lasketaan silloin vierailijakohtaisesti.

Myös Nginx, Traefik tai kuormantasaaja käyvät: ohjaa verkkotunnuksen kaikki liikenne kontin porttiin 3000 ilman vastausten puskurointia (MCP-palvelin ja reaaliaikaisuus lähettävät vastauksensa virtana), ja varmista, että välityspalvelin korvaa X-Forwarded-For-otsakkeen sen sijaan, että täydentäisi sitä.

basedb on vapaa ohjelmisto, jonka tekee Eodia, tekoälynatiivi ohjelmistostudio.