Låt din AI göra det

Du behöver inte kunna OpenID Connect för att koppla din sajt till Aegis. Det räcker att du gör de två manuella stegen — skapar klienten och bestämmer callback-adressen — och sedan låter en AI-assistent skriva koden med den här dokumentationen som underlag.

Dokumentationen är skriven för att kunna läsas av ett verktyg. Varje sida finns som ren Markdown på samma adress med .md i stället för .html, och llms.txt är en innehållsförteckning avsedd för just AI-assistenter.

Det du måste göra själv

  1. Skapa klienten enligt Kom igång, steg 1. Skriv ner CLIENT_ID och CLIENT_SECRET.
  2. Bestäm callback-adressen enligt steg 2, och lägg in den på klienten. Ta den som din stack föredrar om du är osäker.

Det går inte att låta assistenten göra de här två — den har inget konto hos oss, och hemligheten ska aldrig passera genom en chatt om det går att undvika. Ge assistenten klient-id och callback-adress, men lägg in hemligheten själv i User Secrets eller som miljövariabel, där assistenten säger att den ska vara.

Instruktionen

Kopiera, fyll i de tre raderna överst, och klistra in i din assistent. Kör den i ett verktyg som kan läsa din kod (Claude Code, Cursor, Copilot i editorn) så gör den ändringarna direkt.

Jag vill lägga till "Logga in med Aegis Central ID" på min sajt.

Mitt klient-id:        DITT-CLIENT-ID
Min callback-adress:   https://din-sajt.se/callback
Min stack:             ASP.NET Core 10 med befintlig ASP.NET Core Identity   <- byt till din

Aegis Central ID är en OpenID Connect-leverantör. Dokumentationen finns på
https://docs.aegiscentralid.se/ — börja med https://docs.aegiscentralid.se/llms.txt
och läs sedan https://docs.aegiscentralid.se/integration.md, som är skrivet för
verktyg och innehåller alla fasta värden, regler och kodexempel. För ASP.NET
Core finns dessutom https://docs.aegiscentralid.se/aspnet-core.md.

Gör så här:
1. Läs dokumentationen ovan innan du skriver någon kod.
2. Använd stackens standardbibliotek för OpenID Connect enligt dokumentationen.
   Skriv ingen egen OIDC-kod.
3. Authorization Code Flow med PKCE (S256), response_type=code. Utfärdaren är
   https://login.aegiscentralid.se/ — låt biblioteket hämta upptäcktsdokumentet.
4. Begär scopes: openid profile email tenant.role.
5. Använd exakt min callback-adress ovan. Den är registrerad hos Aegis och
   måste matcha tecken för tecken.
6. Läs klienthemligheten ur konfiguration/miljövariabel som heter
   Aegis:ClientSecret (ASP.NET Core) eller AEGIS_CLIENT_SECRET (övriga).
   Skriv aldrig in hemligheten i kod eller i incheckade filer. Tala om för mig
   var jag ska lägga den.
7. Använd anspråket "sub" som nyckel till användaren i min databas, inte
   e-postadressen.
8. Om sajten redan har ett kontosystem (t.ex. ASP.NET Core Identity): lägg
   Aegis som extern inloggning bredvid det, och koppla Aegis-kontot till ett
   befintligt konto via verifierad e-post (email_verified = true), annars skapa
   ett nytt konto. Ta inte bort den befintliga inloggningen.
9. Sajten kan stå bakom en omvänd proxy som avslutar TLS. Lita på
   X-Forwarded-Proto från proxyn, och spara inte tokens i inloggningskakan
   (ASP.NET Core: SaveTokens = false) — annars blir svaret från callbacken
   större än proxyn buffrar.
10. Lägg till en knapp "Logga in med Aegis Central ID" på inloggningssidan.
11. Avsluta med en lista över vad jag måste göra för hand: var hemligheten ska
    in, och vad jag ska kontrollera på klienten hos Aegis
    (https://login.aegiscentralid.se/workspace/clients).

När assistenten är klar

Gå igenom listan den ger dig, och kontrollera själv:

  • Callback-adressen i din konfiguration är exakt den som står på klienten hos oss. Det här är det vanligaste felet, och assistenten kan inte se vår sida.
  • Scopes som koden begär är ibockade på klienten. Förvalet profile, email, tenant.role räcker för instruktionen ovan.
  • Hemligheten ligger där assistenten sa, och inte i en fil som checkas in.

Starta sajten och prova enligt Kom igång, steg 5. Blir det fel, ge assistenten felmeddelandet tillsammans med adressen https://docs.aegiscentralid.se/felsokning.md — varje fel vi kan ge står förklarat där.