LLM-toepassingen in productie (RAG + vectordatabase + caching) · Les

LLM-API-sleutels en gevoelige data beveiligen

Implementeer best practices voor het beschermen van API-sleutels, het beheren van secrets en het verwerken van gevoelige gebruikersdata in LLM-applicaties.

Les 1 van 411 stappen

LLM-API-sleutels en gevoelige data beveiligen is een gratis LLM-toepassingen in productie (RAG + vectordatabase + caching)-les op CoddyKit. Dit is les 1 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject LLM-toepassingen in productie (RAG + vectordatabase + caching). Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus LLM-toepassingen in productie (RAG + vectordatabase + caching) bevat in totaal 4 lessen.

Je LLM-toepassingen beveiligen

Welkom! Naarmate LLM-toepassingen krachtiger worden, verwerken ze vaak gevoelige informatie. API-sleutels beschermen, geheimen beheren en gebruikersgegevens veilig verwerken zijn essentieel voor het bouwen van betrouwbare systemen die vertrouwen wekken.

In deze les verkennen we aanbevolen werkwijzen om je LLM-toepassingen te beschermen tegen veelvoorkomende kwetsbaarheden.

Waarom hardcoderen uit den boze is

Gevoelige informatie, zoals API-sleutels of databasegegevens, rechtstreeks in je broncode hardcoderen is een groot beveiligingsrisico. Dit is waarom:

  • Blootstelling: Als je coderepository ooit wordt gehackt of per ongeluk openbaar wordt gemaakt, komen al je geheimen bloot te liggen.
  • Ongeoorloofde toegang: Blootgestelde sleutels kunnen leiden tot ongeoorloofd gebruik van betaalde API's, met mogelijk aanzienlijke kosten of datalekken tot gevolg.
  • Moeilijk te beheren: Voor het wijzigen van een hardgecodeerd geheim moet je je toepassing aanpassen en opnieuw uitrollen.

Omgevingsvariabelen gebruiken

Omgevingsvariabelen bieden een eenvoudige en doeltreffende manier om configuratie buiten je code op te slaan. Ze zijn ideaal voor ontwikkeling en kleinere implementaties.

  • Scheiding: Houdt gevoelige gegevens gescheiden van de codebase van je toepassing.
  • Flexibiliteit: Wijzig waarden eenvoudig zonder code aan te passen.
  • Op besturingssysteemniveau: Worden ingesteld op het niveau van het besturingssysteem en tijdens runtime door je toepassing gelezen.

Met deze aanpak voorkom je dat geheimen in versiebeheer worden vastgelegd.

Omgevingsvariabelen openen in Python

Zo laad je een API-sleutel uit een omgevingsvariabele in Python. Zorg dat je vóór het uitvoeren van deze code een variabele met de naam MY_LLM_API_KEY in je omgeving instelt!

Bijvoorbeeld in je terminal: export MY_LLM_API_KEY="your_secret_key"

import os

def main():
    # Attempt to load the API key from environment variables
    api_key = os.environ.get("MY_LLM_API_KEY")

    if api_key:
        print("API Key loaded successfully!")
        # Print only a part of the key for security in logs
        print(f"Key snippet: {api_key[:4]}...")
    else:
        print("Error: MY_LLM_API_KEY environment variable not set!")
        print("Please set it (e.g., export MY_LLM_API_KEY='your_key')")

if __name__ == "__main__":
    main()

Geavanceerd beheer van geheimen

Voor productieomgevingen bieden speciale beheerders van geheimen robuustere beveiligingsfuncties dan eenvoudige omgevingsvariabelen. Deze diensten zijn ontworpen voor het beheer van geheimen op ondernemingsniveau.

  • Gecentraliseerde opslag: Alle geheimen worden veilig op één plek opgeslagen.
  • Fijnmazige toegangscontrole: Bepaal wie (of welke dienst) toegang heeft tot specifieke geheimen.
  • Controle en registratie: Houd elke toegang tot een geheim bij voor naleving van regels en beveiligingsbewaking.

Populaire voorbeelden zijn AWS Secrets Manager, Azure Key Vault en HashiCorp Vault.

Hoe beheerders van geheimen werken

Beheerders van geheimen vereenvoudigen de levenscyclus van geheimen door:

  • Versleuteling: Geheimen worden versleuteld wanneer ze zijn opgeslagen en tijdens het verzenden.
  • Dynamische generatie van geheimen: Sommige kunnen tijdelijke aanmeldgegevens voor databases of diensten genereren.
  • Geautomatiseerde vernieuwing: Geheimen worden automatisch vernieuwd (bijvoorbeeld elke 90 dagen) om de gevolgen van een beveiligingslek te beperken.
  • SDK's/API's: Applicaties halen geheimen tijdens runtime veilig op met de meegeleverde bibliotheken of API's, zonder ze ooit permanent op te slaan.

Privégegevens van gebruikers beschermen

LLM-applicaties verwerken vaak invoer van gebruikers die persoonlijk identificeerbare informatie (PII) kan bevatten, zoals namen, adressen of financiële gegevens. Met deze gegevens moet je uiterst zorgvuldig omgaan.

  • Toestemming is essentieel: Stuur nooit PII naar een LLM zonder uitdrukkelijke toestemming van de gebruiker.
  • Dataminimalisatie: Verzamel en verwerk alleen de gegevens die absoluut noodzakelijk zijn.
  • Gegevenslocatie: Let erop waar je gegevens worden opgeslagen en verwerkt, vooral bij gebruikers wereldwijd, zodat je voldoet aan regels zoals de AVG.

Gegevens maskeren en anonimiseren

Als je gevoelige gebruikersgegevens moet verwerken, kun je deze technieken overwegen:

  • Gegevensmaskering: Vervang delen van de gegevens door algemene tekens (bijvoorbeeld een creditcardnummer 1234-5678-9012-3456 vervangen door XXXX-XXXX-XXXX-3456).
  • Anonimisering: Verwijder alle identificerende informatie, zodat de gegevens niet naar een persoon kunnen worden herleid.
  • Pseudonimisering: Vervang PII door kunstmatige identificatiegegevens (pseudoniemen). Zo kun je gegevens analyseren en toch een beschermingslaag behouden, omdat de oorspronkelijke identiteit alleen met een afzonderlijke sleutel kan worden achterhaald.

Kies de methode die voor jouw specifieke gebruikssituatie de beste balans biedt tussen bruikbaarheid en privacy.

Invoer van gebruikers valideren

Invoer van gebruikers is niet altijd onschuldig. Kwaadwillende gebruikers kunnen proberen je LLM-applicatie uit te buiten via promptinjectie of andere aanvallen. Valideer en zuiver invoer altijd voordat je die naar een LLM stuurt:

  • Invoervalidatie: Controleer of de invoer voldoet aan de verwachte indeling, lengte of inhoudstypen. Weiger alles wat verdacht is.
  • Zuivering: Verwijder mogelijk schadelijke tekens of codefragmenten uit de invoer of maak ze onschadelijk.

Zo voorkom je dat de LLM onbedoelde instructies uitvoert of gevoelige informatie uit de backend onthult.

Korte controle: beveiliging van geheimen

Welke van de volgende opties zijn aanbevolen best practices voor het beveiligen van API-sleutels en gevoelige gegevens in een LLM-applicatie?

Samenvatting: veilige LLM-applicaties bouwen

Je hebt belangrijke beveiligingspraktijken voor LLM-applicaties geleerd. Samengevat:

  • Vermijd hardcoderen: Neem gevoelige informatie nooit rechtstreeks op in je code.
  • Omgevingsvariabelen: Gebruik deze tijdens de ontwikkeling om geheimen buiten versiebeheer te houden.
  • Beheerders van geheimen: Gebruik speciale diensten voor robuust en controleerbaar beheer van geheimen in productie.
  • Bescherm PII: Ga zorgvuldig om met gebruikersgegevens en gebruik technieken zoals toestemming, maskering en anonimisering.
  • Valideer en zuiver: Verwerk invoer van gebruikers altijd om kwaadwillende aanvallen te voorkomen.

Met deze stappen kun je de beveiliging en betrouwbaarheid van je LLM-systemen aanzienlijk verbeteren.

Gratis beginnen

Leer LLM-toepassingen in productie (RAG + vectordatabase + caching) met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “LLM-API-sleutels en gevoelige data beveiligen” gratis?

Ja — de volledige tekst van “LLM-API-sleutels en gevoelige data beveiligen” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus LLM-toepassingen in productie (RAG + vectordatabase + caching) wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus LLM-toepassingen in productie (RAG + vectordatabase + caching) bevat in totaal 4 lessen.

Wat leer ik in “LLM-API-sleutels en gevoelige data beveiligen”?

Implementeer best practices voor het beschermen van API-sleutels, het beheren van secrets en het verwerken van gevoelige gebruikersdata in LLM-applicaties. Je oefent met LLM-toepassingen in productie (RAG + vectordatabase + caching) door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met LLM-toepassingen in productie (RAG + vectordatabase + caching) te beginnen?

Ervaring vooraf is niet nodig. LLM-toepassingen in productie (RAG + vectordatabase + caching) op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.

Hoe lang duurt de les “LLM-API-sleutels en gevoelige data beveiligen”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over LLM-toepassingen in productie (RAG + vectordatabase + caching)?

Ja. Elke les over LLM-toepassingen in productie (RAG + vectordatabase + caching) bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. LLM-API-sleutels en gevoelige data beveiligen
  2. Rate limiting en misbruikpreventie
  3. Foutafhandeling en veerkrachtpatronen
  4. Bescherming tegen prompt injection
← Terug naar LLM-toepassingen in productie (RAG + vectordatabase + caching)