Gå til hovedindhold

Hvorfor bliver jeg bedt om at bekræfte, at det er mig, når jeg logger ind med Git Credential Manager, tea eller CLI'en?

Når en app som Git Credential Manager åbner din browser for at logge dig ind på frem.sh, kan frem.sh først vise siden Bekræft, at det er dig. Bekræft med din adgangsnøgle eller sikkerhedsnøgle, en kode fra din godkendelsesapp eller ved at logge ind igen hos din organisations identitetsudbyder, så går browseren direkte tilbage og gør login færdigt. Du skal ikke klikke en ekstra gang for at give appen adgang.

Du bliver spurgt cirka én gang om måneden på hver enhed, når en app logger ind på ny. En app, der fornyer sit login i baggrunden, bliver aldrig spurgt.

Hvad der sker

  1. En app på din computer åbner din browser på frem.sh for at logge dig ind, for eksempel ved dit første git push med Git Credential Manager, eller når du kører fremforge auth login.
  2. Hvis du ikke har bekræftet, at det er dig, inden for de sidste 5 minutter, viser frem.sh Bekræft, at det er dig. Siden viser appens navn og, for en app, der ikke kører på din egen computer, hvor den kører (“Den kører på” og værtens navn). Den skriver “Fortsæt kun, hvis du selv har startet dette login.” og linker til denne side (“Hvorfor bliver jeg spurgt?”).
  3. Du bekræfter (se Sådan bekræfter du).
  4. Browseren vender tilbage til appen, og login gøres færdigt. Du klikker ikke Authorize en gang til.

En bekræftelse gælder i højst 5 minutter og bruges op af det ene login. Hvis en anden app logger ind på ny et minut senere, bekræfter du igen.

Er det den app, jeg startede?

frem.sh viser kun en apps navn direkte, når den stoler på appen ud fra dens klient-id: Git Credential Manager, git-credential-oauth og tea (indbygget i Forgejo) samt fremforge CLI’en og fremforges MCP-connector. Alle andre apps vises med navnet i anførselstegn og med ejeren, for eksempel:

“Example App”, registreret af example-owner, vil logge ind på din konto. Bekræft, at det er dig, for at fortsætte.

Står navnet i anførselstegn med “registreret af”, er det en tredjepartsapp. Tjek, at du selv har startet dette login fra den app. Hvis det ikke er, så fortsæt ikke: luk siden. Nogen forsøger måske at få et token til din konto via en app, de selv har registreret. Fortæl det til din organisations administrator eller security@frem.sh.

Hvorfor frem.sh spørger

Disse apps logger ind uden en klienthemmelighed (client secret). Et program, der er installeret på millioner af bærbare computere, kan ikke holde på en hemmelighed, så OAuth-standarden kalder det en offentlig klient. Det har én konsekvens: frem.sh kan ikke kende den rigtige Git Credential Manager fra et hvilket som helst andet program på en computer, der udgiver sig for at være den.

Hvis nogen havde stjålet din browsersession (en sessionscookie, for eksempel via malware eller en delt computer), kunne de altså køre et lille program, udgive sig for at være Git Credential Manager eller fremforge CLI’en og få et token til din konto uden nogensinde at kende din adgangskode eller din anden faktor.

Når du bekræfter, at det er dig, lukkes det hul. En stjålet session alene giver ikke længere et token: personen skal være til stede med sin adgangsnøgle, sikkerhedsnøgle, godkendelsesapp, adgangskode eller identitetsudbyder. Det er samme idé som GitHubs “sudo mode”, der beder dig godkende igen før følsomme handlinger.

Hvilke apps

Alle apps, der logger ind på frem.sh uden en klienthemmelighed, blandt andet:

  • Git Credential Manager (GCM), sat op som i Sikkert login
  • git-credential-oauth
  • tea, kommandolinjeklienten til Forgejo og Gitea
  • fremforge CLI’en: fremforge auth login, både login i browseren (loopback) og login med enhedskode. Se CLI-godkendelse.
  • AI-assistent-connectors, der logger ind på frem.sh som dig, se MCP
  • alle tredjeparts-OAuth-apps, der er registreret som offentlig klient

Apps med en klienthemmelighed er uændrede. En OAuth-app, der kører på en server og godkender sig med en klienthemmelighed (en fortrolig klient), logger dig ind som før, med den sædvanlige samtykkeside.

Hvor ofte

Cirka én gang om måneden på hver enhed. Du bekræfter, når en app logger ind på ny, ikke hver gang du bruger git:

  • En app, der fornyer sit login i baggrunden, bliver aldrig spurgt. Git Credential Managers adgangstoken gælder i 24 timer og dets fornyelsestoken (refresh token) i 30 dage. Inden for de 30 dage fornyer GCM tokenet i stilhed ved dit næste push eller fetch.
  • fremforge CLI’ens tokens på 1 time fornyes i stilhed på samme måde.
  • Når en app bruger et login, den allerede har, bliver du aldrig spurgt. Push, fetch og kald fra CLI’en og connectors med et eksisterende login går igennem som før.

Du bliver spurgt, når en app åbner browseren for at logge ind på ny. Det sker:

  • ved en ny enheds første login, for eksempel en ny bærbar eller en ny WSL-installation
  • når du har logget ud, eller når du har fjernet appens adgang under Autoriserede OAuth2-applikationer på frem.sh/user/settings/applications
  • efter 30 dage uden brug, når fornyelsestokenet er udløbet

Sådan bekræfter du

Du harDu bekræfter med
En adgangsnøgle eller sikkerhedsnøgleBrug din adgangsnøgle eller sikkerhedsnøgle. Synkroniserede adgangsnøgler (for eksempel i iCloud-nøglering, Google Adgangskodeadministrator eller en adgangskodeadministrator) virker også.
En godkendelsesapp (TOTP)En 6-cifret kode fra appen. Har du også en adgangsnøgle, står kodefeltet under knappen til adgangsnøglen.
En adgangskode, men endnu ingen anden faktorDin adgangskode til frem.sh
Single sign-on via din organisationÉt klik: Log ind igen med din identitetsudbyder. Har du også en adgangsnøgle eller godkendelsesapp, er det et link under dem.

Single sign-on: ét klik, et nyt login. frem.sh beder din identitetsudbyder om et nyt login og tæller det kun, hvis udbyderen faktisk loggede dig ind lige nu: det kan nogen med en stjålet frem.sh-session ikke. Du behøver ikke en adgangsnøgle eller en anden faktor på frem.sh til Git Credential Manager, tea eller CLI’en. Kræver din organisation en anden faktor hos identitetsudbyderen, gennemfører du den dér som sædvanligt.

Annullerer du hos din identitetsudbyder, eller bad den dig ikke logge ind igen (den genbrugte et tidligere login), kommer du tilbage til siden Bekræft, at det er dig, som siger det og lader dig prøve igen.

Har du en adgangskode, men ingen anden faktor, skriver siden også “Opsæt tofaktorgodkendelse, så du næste gang kan bekræfte med en kode eller en sikkerhedsnøgle.” Har du kun single sign-on, skriver den “Opsæt en adgangsnøgle eller en anden form for tofaktorgodkendelse, så du kan bekræfte her næste gang.” Det er valgfrit: et nyt login hos din identitetsudbyder er nok.

Du har 5 forsøg på 15 minutter. Derefter beder siden dig prøve igen om 15 minutter.

Jeg har ingen anden faktor

  • Du har en adgangskode til frem.sh: bekræft med din adgangskode. Opsæt derefter en adgangsnøgle eller tofaktorgodkendelse, så du næste gang bekræfter med den. Indtil du har bekræftet med den én gang, tilbyder siden din adgangskode ved siden af den nye faktor.
  • Du logger kun ind via din organisations single sign-on: klik på Log ind igen med din identitetsudbyder. Det er alt.
  • Du har ingen af delene: siden beder dig kontakte din organisations administrator eller support@frem.sh. Vi hjælper dig med at opsætte en anden faktor.

Fejlfinding

  • Login fejlede, efter jeg havde bekræftet. Bekræftelsen bruges op af ét login og gælder i 5 minutter. Hvis appen fik timeout imens, så kør kommandoen igen (for eksempel git fetch), og bekræft en gang til.
  • "… bad dig ikke logge ind igen, så det kunne ikke bekræfte, at det er dig." Din identitetsudbyder genbrugte et tidligere login i stedet for at spørge dig igen. Prøv en gang til. Sker det igen, så fortæl det til din administrator: udbyderen ignorerer frem.sh’ anmodning om et nyt login.
  • “Din organisation kræver en anden faktor hos … og den bekræftede ikke en.” Din organisations identitetsudbyder er sat op til at kræve en anden faktor og meldte ikke om en. Log ind igen, og gennemfør trinnet med den anden faktor dér.
  • “Du har opsat denne adgangsnøgle eller kode i denne session, så den kan ikke bekræfte en apps login her.” En faktor, du lige har tilføjet, kan ikke bekræfte en apps login, før du én gang har bekræftet, at det er dig, på en anden måde, så nogen med en stjålet session ikke kan tilføje en adgangsnøgle og bruge den. Du skal ikke vente: brug én gang en faktor, du havde i forvejen, din adgangskode, eller Log ind igen med din identitetsudbyder. Derefter virker den nye adgangsnøgle som normalt, på alle enheder.
  • Jeg bliver spurgt hver dag. Tjek, at Git Credential Manager kan gemme sit token: se indstillingen credential.credentialStore i trin 4 i Sikkert login. Uden et fungerende lager har GCM intet fornyelsestoken at genbruge og logger ind på ny hver gang.
  • Et script eller et CI-job holdt op med at virke. Jobs, der kører uden opsyn, bør ikke bruge et interaktivt login. Brug et personligt adgangstoken eller Forgejo Actions OIDC, som ikke er berørt.