OIDC Discovery-endepunktet
Lær hvordan OIDC Discovery-endepunktet lar klienter hente all nødvendig OIDC-konfigurasjonsinformasjon programmatisk.
OIDC Discovery-endepunktet er en gratis leksjon i OAuth2 og OpenID Connect i dybden på CoddyKit. Dette er leksjon 2 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i OAuth2 og OpenID Connect i dybden, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i OAuth2 og OpenID Connect i dybden inneholder totalt 4 leksjoner.
Hva er OIDC Discovery?
Se for deg at du bygger en applikasjon som må koble seg til en OpenID Provider (IdP) som Google eller Auth0. Hvordan vet du hva autorisasjons-URL-en og token-URL-en er, eller hvordan du henter de offentlige nøklene?
Det er tungvint og feilutsatt å konfigurere disse detaljene manuelt for hver IdP. Det er her OIDC Discovery kommer inn!
Discovery-endepunktet
OIDC Discovery tilbyr en standardisert måte for klienter å finne all nødvendig konfigurasjonsinformasjon om en OpenID Provider.
I stedet for å hardkode URL-er kan klientapplikasjonen hente ett enkelt JSON-dokument fra en velkjent URL. Dette dokumentet inneholder alle endepunktene og funksjonene til IdP-en.
Finne Discovery-dokumentet
Klienter får vanligvis tilgang til OIDC Discovery-dokumentet via en spesifikk, standardisert URL:
- Basis-URLen til OpenID Provider
- Etterfulgt av
/.well-known/openid-configuration
Hvis basis-URL-en til IdP-en for eksempel er https://accounts.example.com, blir discovery-endepunktet https://accounts.example.com/.well-known/openid-configuration.
Viktige felter: Issuer og JWKS URI
Discovery-dokumentet er et JSON-objekt med mange felter. To viktige felter er:
issuer: En URL som identifiserer OpenID Provider entydig. Den må samsvare mediss-claimet i ID Tokens.jwks_uri: URL-en til JSON Web Key Set-dokumentet (JWKS). Dette dokumentet inneholder de offentlige nøklene IdP-en bruker til å signere ID Tokens, slik at klienten kan bekrefte at de er ekte.
Viktige felter: Endepunkter
Discovery-dokumentet viser de ulike endepunktene klienten kommuniserer med:
authorization_endpoint: Dit brukeren omdirigeres for å gi samtykke.token_endpoint: Dit klienten sender autorisasjonskoden for å bytte den mot access- og ID-tokens.userinfo_endpoint: Dit klienten kan sende forespørsler om brukerprofilinformasjon etter å ha fått et access-token.end_session_endpoint: (Valgfritt) Dit klienten kan omdirigere brukeren for å logge ut fra IdP-en.
Viktige felter: Funksjonalitet
Dokumentet oppgir også hvilke funksjoner IdP-en støtter:
scopes_supported: En liste over OAuth 2.0-verdiene forscopesom denne IdP-en støtter.response_types_supported: En liste over OAuth 2.0-verdiene forresponse_typesom denne IdP-en støtter.grant_types_supported: (Valgfritt) En liste over OAuth 2.0-verdiene forgrant_typesom denne IdP-en støtter.
Dette hjelper klienten med å forstå hvilke funksjoner som er tilgjengelige.
Eksempel på et Discovery-dokument
Her er et forenklet eksempel på hvordan et OIDC Discovery-dokument kan se ut:
{
"issuer": "https://example.com/openid",
"authorization_endpoint": "https://example.com/openid/auth",
"token_endpoint": "https://example.com/openid/token",
"userinfo_endpoint": "https://example.com/openid/userinfo",
"jwks_uri": "https://example.com/openid/jwks",
"scopes_supported": [
"openid",
"profile",
"email"
],
"response_types_supported": [
"code",
"id_token",
"token id_token"
],
"grant_types_supported": [
"authorization_code",
"implicit",
"refresh_token"
],
"id_token_signing_alg_values_supported": [
"RS256"
]
}Slik bruker klienter Discovery
En klientapplikasjon kan utføre OIDC Discovery ved å:
- Hente JSON-dokumentet fra endepunktet
/.well-known/openid-configuration. - Analysere JSON-innholdet for å hente ut nødvendige URL-er og funksjoner.
- Bruke disse dynamisk oppdagede verdiene til å konstruere autorisasjonsforespørsler, utveksle tokens og validere ID Tokens.
Dette gjør integrasjonen av klienten langt mer robust og fremtidssikker.
Fordeler med Discovery
OIDC Discovery gir flere fordeler:
- Mindre konfigurasjon: Klienter trenger ikke å hardkode IdP-endepunkter.
- Større fleksibilitet: IdP-er kan endre URL-er til endepunkter uten at klientene slutter å fungere.
- Bedre sikkerhet: Klienter kan enkelt finne
jwks_urifor å bekrefte signaturene til ID Tokens. - Samhandling: Fremmer en standardisert måte for klienter å kommunisere med alle OIDC-kompatible IdP-er på.
Test kunnskapene dine
Hvilket av følgende felter i OIDC Discovery-dokumentet bruker en klient til å bekrefte signaturen til et ID Token?
Oppsummering: OIDC Discovery
Vi har lært at OIDC Discovery gir klienter en standardisert måte å finne konfigurasjonen til en OpenID Provider på.
- Klienter bruker det kjente endepunktet
/.well-known/openid-configuration. - Det returnerte JSON-dokumentet inneholder viktige URL-er (authorization, token, userinfo, jwks) og funksjoner (scopes, response types).
- Denne automatiseringen forenkler oppsettet av klienten, gir større fleksibilitet og bedre sikkerhet ved å tilby nødvendige offentlige nøkler for validering av tokens.
Lær deg OAuth2 og OpenID Connect i dybden med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «OIDC Discovery-endepunktet» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien OAuth2 og OpenID Connect i dybden, inkludert «OIDC Discovery-endepunktet», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i OAuth2 og OpenID Connect i dybden inneholder totalt 4 leksjoner.
Hva lærer jeg i «OIDC Discovery-endepunktet»?
Lær hvordan OIDC Discovery-endepunktet lar klienter hente all nødvendig OIDC-konfigurasjonsinformasjon programmatisk. Du øver på OAuth2 og OpenID Connect i dybden med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med OAuth2 og OpenID Connect i dybden?
Ingen tidligere erfaring er nødvendig. OAuth2 og OpenID Connect i dybden på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «OIDC Discovery-endepunktet»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne OAuth2 og OpenID Connect i dybden-leksjonen?
Ja. Alle OAuth2 og OpenID Connect i dybden-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Dynamisk klientregistrering
- OIDC Discovery-endepunktet
- Økthåndtering
- Claims-forespørsel og aggregerte claims