Kotlin Multiplatform Academy · Lektion

Gem et auth-token sikkert

Et praktisk mønster til persistent lagring af legitimationsoplysninger

Lektion 4 af 413 trin

Gem et auth-token sikkert er en gratis Kotlin Multiplatform Academy-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Kotlin Multiplatform Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Kotlin Multiplatform Academy-kurset indeholder 4 lektioner i alt.

Tokens skal have et hjem

Efter login har din app et godkendelsestoken, som den skal huske efter genstarter. Det er meget vigtigt, hvor du gemmer det. 🔐

Almindelige Settings er ikke sikkert

Almindelige Settings gemmer værdier i klartekst. Det er fint til et tema, men risikabelt for et token, der giver adgang til en konto.

Krypteret lagring

Brug platformens krypterede lager til hemmeligheder: Keychain på iOS og EncryptedSharedPreferences på Android.

Skjul det bag en grænseflade

Definér en lille delt TokenStore-grænseflade, så commonMain aldrig behøver at vide, hvilket sikkert backend-lager de enkelte platforme bruger.

interface TokenStore {
    fun save(token: String)
    fun read(): String?
    fun clear()
}

expect angiver implementeringen

Deklarér fabrikken med expect i commonMain. Hver platform leverer den sikre actual-version.

expect fun createTokenStore(): TokenStore

Gem efter login

Skriv tokenet gennem dit delte lager lige efter et vellykket login. Brugergrænsefladen rører aldrig lageret direkte.

fun onLogin(store: TokenStore, token: String) {
    store.save(token)
}

Læs ved opstart

Læs tokenet ved opstart for at afgøre, om brugeren allerede er logget ind, eller om login-skærmen skal vises.

val loggedIn = store.read() != null

Vedhæft det til forespørgsler

Giv tokenet videre til din Ktor-klient som en Bearer-header, så alle godkendte kald automatisk indeholder det.

header("Authorization", "Bearer " + token)

Ryd ved logud

Når brugeren logger ud, skal du clear tokenet, så det aldrig kan genbruges. Slet altid legitimationsoplysninger bevidst.

fun onLogout(store: TokenStore) {
    store.clear()
}

Log aldrig tokens

Hold tokens ude af logge og fejlrapporter. En lækket hemmelighed i en logfil er lige så farlig som lagring i klartekst.

Ét mønster, begge apps

Dette expect/actual-mønster holder den delte kode ren, mens hver platform håndterer hemmeligheder på den sikre, indbyggede måde.

Hurtigt tjek

Lad os bekræfte tilgangen til sikker lagring.

Opsummering

Du gemmer tokens i et sikkert platformslager bag en delt TokenStore, gemmer efter login, rydder ved logud og logger aldrig hemmeligheder. Det afslutter kurset! 🎉

Gratis at komme i gang

Lær Kotlin med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “Gem et auth-token sikkert” gratis?

Ja — hele teksten til “Gem et auth-token sikkert” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Kotlin Multiplatform Academy-kurset, skal du opgradere til CoddyKit PRO. Kotlin Multiplatform Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Gem et auth-token sikkert”?

Et praktisk mønster til persistent lagring af legitimationsoplysninger Du øver dig i Kotlin Multiplatform Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Kotlin Multiplatform Academy?

Der kræves ingen tidligere erfaring. Kotlin Multiplatform Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “Gem et auth-token sikkert”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Kotlin Multiplatform Academy-lektion?

Ja. Alle Kotlin Multiplatform Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Hvorfor en Settings-abstraktion
  2. Læs og skriv typede værdier
  3. Standardværdier og rydning af nøgler
  4. Gem et auth-token sikkert
← Tilbage til Kotlin Multiplatform Academy