Varför ombeds jag bekräfta att det är jag när jag loggar in med Git Credential Manager, tea eller CLI:t?
När en app som Git Credential Manager öppnar din webbläsare för att logga in dig på frem.sh kan frem.sh först visa sidan Bekräfta att det är du. Bekräfta med din passkey eller säkerhetsnyckel, en kod från din autentiseringsapp eller genom att logga in igen hos organisationens identitetsleverantör. Då går webbläsaren direkt tillbaka och slutför inloggningen. Du behöver inte klicka en gång till för att ge appen åtkomst.
Du får frågan ungefär en gång i månaden på varje enhet, när en app loggar in på nytt. En app som förnyar sin inloggning i bakgrunden får aldrig frågan.
Vad som händer
- En app på din dator öppnar din webbläsare på frem.sh för att logga in dig, till exempel vid din första
git pushmed Git Credential Manager eller när du körfremforge auth login. - Om du inte har bekräftat att det är du under de senaste 5 minuterna visar frem.sh Bekräfta att det är du. Sidan visar appens namn och var den körs (för en app som inte körs på din egen dator: ”Den körs på” och värden). Den skriver ”Fortsätt bara om du själv har startat den här inloggningen.” och länkar till den här sidan (”Varför får jag frågan?”).
- Du bekräftar (se Så bekräftar du).
- Webbläsaren går tillbaka till appen och inloggningen slutförs. Du klickar inte på Authorize en gång till.
En bekräftelse gäller i högst 5 minuter och förbrukas av den enda inloggningen. Om en andra app loggar in på nytt en minut senare bekräftar du igen.
Är det här appen jag startade?
frem.sh visar bara en apps namn rakt av när den litar på appen utifrån dess klient-id: Git Credential Manager, git-credential-oauth och tea (inbyggda i Forgejo) samt fremforge CLI och fremforges MCP-connector. Alla andra appar visas med namnet inom citattecken och med ägaren, till exempel:
”Example App”, registrerad av example-owner, vill logga in på ditt konto. Bekräfta att det är du för att fortsätta.
Står namnet inom citattecken med ”registrerad av” är det en tredjepartsapp. Kontrollera att du själv har startat den här inloggningen från den appen. Om inte, fortsätt inte: stäng sidan. Någon kanske försöker få en token för ditt konto via en app som hen har registrerat. Meddela organisationens administratör eller security@frem.sh.
Varför frem.sh frågar
De här apparna loggar in utan klienthemlighet (client secret). Ett program som är installerat på miljontals bärbara datorer kan inte hålla en hemlighet, så OAuth-standarden kallar det en publik klient. Det får en följd: frem.sh kan inte skilja den riktiga Git Credential Manager från vilket annat program som helst på en dator som påstår sig vara den.
Om någon hade stulit din webbläsarsession (en sessionscookie, till exempel via skadlig kod eller en delad dator) skulle hen alltså kunna köra ett eget litet program, utge sig för att vara Git Credential Manager eller fremforge CLI och få en token för ditt konto, utan att någonsin känna till ditt lösenord eller din andra faktor.
När du bekräftar att det är du stängs det hålet. En stulen session räcker inte längre för att få en token: personen måste vara närvarande med sin passkey, säkerhetsnyckel, autentiseringsapp, sitt lösenord eller sin identitetsleverantör. Det är samma idé som GitHubs ”sudo mode”, som ber dig autentisera dig igen före känsliga åtgärder.
Vilka appar
Alla appar som loggar in på frem.sh utan klienthemlighet, bland annat:
- Git Credential Manager (GCM), konfigurerad som i Säker inloggning
- git-credential-oauth
- tea, kommandoradsklienten för Forgejo och Gitea
- fremforge CLI:
fremforge auth login, både inloggning i webbläsaren (loopback) och inloggning med enhetskod. Se Autentisering i CLI:t. - AI-assistenters connectors som loggar in på frem.sh som dig, se MCP
- alla OAuth-appar från tredje part som är registrerade som publik klient
Appar med en klienthemlighet påverkas inte. En OAuth-app som körs på en server och autentiserar sig med en klienthemlighet (en konfidentiell klient) loggar in dig som tidigare, med den vanliga sidan för medgivande.
Hur ofta
Ungefär en gång i månaden på varje enhet. Du bekräftar när en app loggar in på nytt, inte varje gång du använder git:
- En app som förnyar sin inloggning i bakgrunden får aldrig frågan. Git Credential Managers åtkomsttoken gäller i 24 timmar och dess uppdateringstoken i 30 dagar. Inom de 30 dagarna förnyar GCM token tyst vid din nästa push eller fetch.
- fremforge CLI:ts tokens på 1 timme förnyas tyst på samma sätt.
- När en app använder en inloggning den redan har får du aldrig frågan. Push, fetch och anrop från CLI:t och connectors med en befintlig inloggning går igenom som tidigare.
Du får frågan när en app öppnar webbläsaren för att logga in på nytt. Det händer:
- vid en ny enhets första inloggning, till exempel en ny bärbar dator eller en ny WSL-installation
- efter att du har loggat ut, eller efter att du har tagit bort appens åtkomst under Auktoriserade OAuth2-appar på
frem.sh/user/settings/applications - efter 30 dagar utan användning, när uppdateringstoken har gått ut
Så bekräftar du
| Du har | Du bekräftar med |
|---|---|
| En passkey eller säkerhetsnyckel | Använd din nyckel eller säkerhetsnyckel. Synkroniserade passkeys (till exempel i iCloud-nyckelringen, Googles lösenordshanterare eller en lösenordshanterare) fungerar också. |
| En autentiseringsapp (TOTP) | En sexsiffrig kod från appen. Har du också en passkey står kodfältet under knappen för passkey. |
| Ett lösenord men ännu ingen andra faktor | Ditt lösenord till frem.sh |
| Single sign-on via din organisation | Ett klick: Logga in igen med …, följt av namnet på din identitetsleverantör. Har du också en passkey eller autentiseringsapp är det en länk under dem. |
Single sign-on: ett klick, en ny inloggning. frem.sh ber din identitetsleverantör om en ny inloggning och räknar den bara om leverantören verkligen loggade in dig just nu: det kan inte någon med en stulen frem.sh-session. Du behöver ingen passkey eller andra faktor på frem.sh för Git Credential Manager, tea eller CLI:t. Kräver din organisation en andra faktor hos identitetsleverantören slutför du den där som vanligt.
Om du avbryter hos din identitetsleverantör, eller om den inte bad dig logga in igen (den återanvände en tidigare inloggning), kommer du tillbaka till sidan Bekräfta att det är du, som säger det och låter dig försöka igen.
Med ett lösenord men ingen andra faktor skriver sidan också: ”Konfigurera tvåfaktorsautentisering så att du nästa gång kan bekräfta med en kod eller en säkerhetsnyckel.” Med bara single sign-on skriver den: ”Konfigurera en nyckel eller ett annat sätt för tvåfaktorsautentisering, så att du kan bekräfta här nästa gång.” Det är valfritt: att logga in igen hos din identitetsleverantör räcker.
Du har 5 försök på 15 minuter. Därefter ber sidan dig försöka igen om 15 minuter.
Jag har ingen andra faktor
- Du har ett lösenord till frem.sh: bekräfta med ditt lösenord. Konfigurera sedan en passkey eller tvåfaktorsautentisering så att du bekräftar med den nästa gång. Tills du har bekräftat med den en gång erbjuder sidan ditt lösenord bredvid den nya faktorn.
- Du loggar bara in via organisationens single sign-on: klicka på Logga in igen med … för din identitetsleverantör. Det är allt.
- Du har inget av detta: sidan ber dig kontakta organisationens administratör eller support@frem.sh. Vi hjälper dig att konfigurera en andra faktor.
Felsökning
- Inloggningen misslyckades efter att jag hade bekräftat. Bekräftelsen förbrukas av en inloggning och gäller i 5 minuter. Om appen fick timeout under tiden, kör kommandot igen (till exempel
git fetch) och bekräfta en gång till. - ”… bad dig inte logga in igen, så det gick inte att bekräfta att det är du.” Din identitetsleverantör återanvände en tidigare inloggning i stället för att fråga dig igen. Försök en gång till. Om det fortsätter, meddela din administratör: leverantören ignorerar frem.sh:s begäran om en ny inloggning.
- ”Din organisation kräver en andra faktor hos … och ingen bekräftades.” Organisationens identitetsleverantör är inställd på att kräva en andra faktor och rapporterade ingen. Logga in igen och slutför steget med den andra faktorn där.
- ”Du konfigurerade den här nyckeln eller koden i den här sessionen, så den kan inte bekräfta en apps inloggning här.” En faktor som du nyss har lagt till kan inte bekräfta en apps inloggning förrän du en gång har bekräftat att det är du på ett annat sätt, så att någon med en stulen session inte kan lägga till en passkey och använda den. Du behöver inte vänta: använd en gång en faktor du hade sedan tidigare, ditt lösenord eller Logga in igen med … för din identitetsleverantör. Därefter fungerar den nya passkeyn som vanligt, på alla enheter.
- Jag får frågan varje dag. Kontrollera att Git Credential Manager kan spara sin token: se inställningen
credential.credentialStorei steg 4 i Säker inloggning. Utan en fungerande lagring har GCM ingen uppdateringstoken att återanvända och loggar in på nytt varje gång. - Ett skript eller ett CI-jobb slutade fungera. Jobb som körs obevakat bör inte använda en interaktiv inloggning. Använd en personlig åtkomsttoken eller Forgejo Actions OIDC, som inte påverkas.