Page History
...
Ved behandling af en forespørgsel om udstedelse af ID-kort hos en STS, gennemgås en række skridt. Forløbet er skitseret forsimplet nedenfor, med de skridt der har primær relevans i forhold til diagnosticering af udstedelse. Hvert skridt kan føre til en afvisning af forespørgslen, mens succesfuld verifikation leder til signering og dermed udstedelse af et ID-kort.
Verificeret forespørgsel
...
I forbindelse med fejlsøgning sammenholdes den konkrete SOAP fejl med de beskrevne STS svar ved hjælp af faultcode, faultactor og faultstring.
Validering af
...
CPR
| Ugyldigt CPR nummer | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication
|
| Årsag | Anvender, bruger |
| Forklaring | MOCES Certifikat og CPR-nummer fra ID-kort stemmer ikke overens, og identitet kan ikke bekræftes. |
| Løsning |
|
| Manglende CPR nummer tilknytning | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication
|
| Årsag | Anvender, bruger |
| Forklaring | Det anvendte MOCES certifikat har ikke noget tilknytte tilknyttet CPR-nummer og identitet kan ikke bekræftes. |
| Løsning | Check at der er tilknyttet et CPR til certifikatet hos DanID |
| Fejl ved CPR nummer opslag | |
|---|---|
| STS svar | faultcode = wst:RequestFailed faultactor = dk:sosi:sts:cvrridcpr faultstring = The specified request failed:* |
| Årsag | STS |
| Forklaring | STS har ikke kunnet foretage opslag imod RID-CPR tjeneste og dermed ikke kunnet verificere ID-kortet. |
| Løsning |
|
| Manglende autorisationFejl ved CVRRID-CPR opslag | |
|---|---|
| STS svar | faultcode = wst:FailedAuthenticationRequestFailed faultactor = dk:sosi:sts:autorisationcvrridcpr faultstring = Authentication failed: missing authorizationThe specified request failed: cvrrid-cpr lookup failed [<subjectSerialNumber>] |
| Årsag | BrugerSTS |
| Forklaring | Der findes ikke nogle tilknyttede gyldige autorisationer til CPR-nummeret i autorisationsregisteret. |
| Løsning | Check at brugeren har en gyldig autorisation. |
| STS har ikke kunnet foretage opslag imod CVRRID-CPR tjeneste og dermed ikke kunnet verificere ID-kortet. | |
| Løsning |
|
| Fejl ved UUID-CPR opslagForkert autorisation | |
|---|---|
| STS svar | faultcode = wst:FailedAuthenticationRequestFailed faultactor = dk:sosi:sts:autorisationuuidcpr faultstring = Authentication The specified request failed: authorization not found (available [{code, role}, .., {code, role}])uuid-cpr lookup failed [<subjectSerialNumber>] |
| Årsag | BrugerSTS |
| Forklaring | Der blev ikke fundet en autorisation tilknyttet CPR-nummeret, som matcher autorisations- eller uddannelseskode i ID-kortet. Medsendt i fejlteksten er en liste over de autorisationskoder (code) og uddannelseskoder (role) som er tilgængelige for CPR-nummeret. |
| Løsning | Tjek at brugerens autorisationer mathcer med de medsendte oplysninger i ID-kortet, dvs. SAML attributten UserAuthorizationCode (autorisationskode) og UserRole (uddannelseskode). Anvend eventuelt en af de mulige kombinationer i fejlteksten. |
| Flere autorisationer fundet | |
| STS har ikke kunnet foretage opslag imod UUID-CPR tjeneste og dermed ikke kunnet verificere ID-kortet. | |
| Løsning |
|
| Ingen bruger data for CPR | |
|---|---|
| STS svar | faultcode = wst:FailedAuthenticationRequestFailed faultactor = dk:sosi:sts:autorisationbst2sosi faultstring = Authentication failed: multiple authorizations found ([{code, role}, .., {code, role}])Could not find userData for input CPR. |
| Årsag | Bruger |
| Forklaring | Der blev fundet mere end én autorisation tilknyttet CPR-nummeret, som matcher autorisations- eller uddannelseskode i ID-kortet. Medsendt i fejlteksten er en liste over de autorisationskoder (code) og uddannelseskoder (role) som matchede. |
| Løsning | Angiv i ID-kortet hvilken autorisation der skal bruges, dvs. enten med angivelse af autorsations- eller uddannelseskode. Anvend eventuelt en af de mulige kombinationer i fejlteksten. |
Validering af claims
| ikke fundet bruger informationer for det medsendte CPR nummer. | |
| Løsning | Undersøg om det medsendte CPR nummer er korrekt. |
|---|
Validering af rolle/autorisation
| Fejl ved autorisation opslagManglende CPR claim | |
|---|---|
| STS svar | faultcode = wst:InvalidRequestRequestFailed faultactor = dk:sosi:sts:*autorisation faultstring = CPR claim missingThe specified request failed: authorization lookup failed [<cpr>] |
| Årsag | AnvenderSTS |
| Forklaring | Den medsendte forespørgsel indeholder ikke et CPR claim. |
| Løsning | Fremsend en ny forespørgsel med et gyldigt CPR claim (og overvej at stramme op på klient systemets input validering). |
| STS har ikke kunnet foretage opslag imod autorisationsregisteret og dermed ikke kunnet verificere ID-kortet. | |
| Løsning |
|
| Manglende autorisationUgyldigt CPR claim | |
|---|---|
| STS svar | faultcode = wst:InvalidRequestFailedAuthentication faultactor = dk:sosi:sts:*autorisation faultstring = CPR-number must be 10 digitsAuthentication failed: missing authorization |
| Årsag | AnvenderBruger |
| Forklaring | Den medsendte forespørgsel indeholder et CPR claim i ugyldigt format. |
| Løsning | Fremsend en ny forespørgsel med et gyldigt CPR claim (og overvej at stramme op på klient systemets input validering). |
| Der er i forespørgslen angivet en autorisation, men der findes ikke nogle tilknyttede gyldige autorisationer til CPR-nummeret i autorisationsregisteret. | |
| Løsning | Tjek at brugeren har en gyldig autorisation. |
| Forkert autorisationForkert CPR claim | |
|---|---|
| STS svar | faultcode = wst:InvalidRequestFailedAuthentication faultactor = dk:sosi:sts:itsautorisation faultstring = CPR/PID mismatchAuthentication failed: authorization not found (available [{code, role}, .., {code, role}]) |
| Årsag | AnvenderBruger |
| Forklaring | Det medsendte påståede CPR matcher ikke cpr nummeret tilknyttet brugerens certifikat. Brugeren har formentlig tastet forkert. |
| Løsning | Fremsend en ny forespørgsel med et gyldigt CPR claim. |
| Der blev ikke fundet en autorisation tilknyttet CPR-nummeret, som matcher autorisations- eller uddannelseskode i ID-kortet. Medsendt i fejlteksten er en liste over de autorisationskoder (code) og uddannelseskoder (role) som er tilgængelige for CPR-nummeret. | |
| Løsning | Tjek at brugerens autorisationer mathcer med de medsendte oplysninger i ID-kortet, dvs. SAML attributten UserAuthorizationCode (autorisationskode) og UserRole (uddannelseskode). Anvend eventuelt en af de mulige kombinationer i fejlteksten. |
| Flere autorisationer fundetManglende OnBehalfOf claim | |
|---|---|
| STS svar | faultcode = wst:InvalidRequestFailedAuthentication faultactor = dk:sosi:sts:itsautorisation faultstring = OnBehalfOf claim must not be emptyAuthentication failed: multiple authorizations found ([{code, role}, .., {code, role}]) |
| Årsag | AnvenderBruger |
| Forklaring | Den medsendte forespørgsel indeholder ikke et OnBehalfOf claim. |
| Løsning | Fremsend en ny forespørgsel med et gyldigt OnBehalfOf claim (og overvej at stramme op på klient systemets input validering). |
| STS svar | faultcode = faultactor = faultstring = | Årsag | Forklaring | Løsning |
Validering af audience
| Der blev fundet mere end én autorisation tilknyttet CPR-nummeret, som matcher autorisations- eller uddannelseskode i ID-kortet. Medsendt i fejlteksten er en liste over de autorisationskoder (code) og uddannelseskoder (role) som matchede. | |
| Løsning | Angiv i ID-kortet hvilken autorisation der skal bruges, dvs. enten med angivelse af autorsations- eller uddannelseskode. Anvend eventuelt en af de mulige kombinationer i fejlteksten. Alternativt kan bruger rollen sættes til "urn:dk:healthcare:no-role" i forespørgslen for at angive at der ikke ønskes en rolle eller autorisation på ID-kortet. |
|---|
| Ingen rolle eller autorisation fundet for brugerAngivelse af audience mangler | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:itsnbo faultstring = Audience is missing |
| Årsag | Anvender |
| Forklaring | Den medsendte forespørgsel indeholder ikke angivelse af et audience (som det udstedte token kan benyttes til) |
| Løsning | Anvendersystemet tilrettes til at medsende audience (dette vil ofte være https://fmk). |
| Ukendt audience | |
| The request was invalid or malformed: EducationCode must be specified or unique authorization must exist. | |
| Årsag | Bruger |
| Forklaring | Der skal enten være angivet en rolle i ID-kortet, eller den specificerede bruger skal have præcis én national rolle eller autorisation. |
| Løsning | Angiv i ID-kortet den ønskede rolle eller autorisation for brugeren. |
| Bruger har ikke den forespurgte nationale rolle | |
|---|---|
| STS STS svar | faultcode = wst:InvalidRequestFailedAuthentication faultactor = dk:sosi:sts:itsautorisation faultstring = Audience not configuredAuthentication failed: user does not have the requested role (<role>) |
| Årsag | AnvenderBruger |
| Forklaring | Den medsendte forespørgsel indeholder angivelse af et ukendt audience (som det udstedte token kan benyttes til) |
| Løsning | Anvendersystemet tilrettes til at medsende korrekt audience (dette vil ofte være https://fmk). |
Validering af signatur
| nationale rolle er ikke tilknyttet den specificerede bruger. | |
| Løsning | Lav en ny forespørgsel med en rolle, som er knyttet til den specificerede bruger. |
|---|
| Ugyldig national rolleUgyldig signatur | |
|---|---|
| STS svar | faultcode = wst:InvalidRequestFailedAuthentication faultactor = dk:sosi:sts:*autorisation faultstring = Unable to validate envelope signatureAuthentication failed: invalid role supplied (<role>) |
| Årsag | Anvender |
| Forklaring | Den medsendte forespørgsel indeholder ingen eller en ugyldig xml signatur - dette sker ofte ved omformatering af indeholdet på en signeret besked |
| Løsning | Anvendersystemet tilrettes til at signere og/eller undgå omformatering i forbindelse med afsendelse |
| Medsendte rolle har formatet af en national rolle, men matcher ikke en kendt national rolle. | |
| Løsning | Undersøg om medsendte rolle er indtastet forkert. |
| Flere nationale roller fundetUgyldig token signatur | |
|---|---|
| STS svar | faultcode = wst:InvalidRequestFailedAuthentication faultactor = dk:sosi:sts:*autorisation faultstring = Signature on OIOSAMLAssertion is invalidAuthentication failed: multiple national roles found (<nationalRoles>) |
| Årsag | Anvender |
| Forklaring | Den medsendte forespørgsel indeholder et bootstrap token med ugyldig xml signatur - dette sker ofte ved omformatering af indeholdet på en signeret besked |
| Løsning | Anvendersystemet tilrettes til at signere og/eller undgå omformatering i forbindelse med afsendelse |
| Forespørgslen indeholder ikke en national rolle eller autorisation, og der blev fundet mere end én national rolle tilknyttet CPR-nummeret for brugeren. | |
| Løsning | Angiv i forespørgslen hvilken national rolle der skal bruges. Anvend en af de mulige roller (nationalRoles) fra fejlteksten. Alternativt kan bruger rollen sættes til "urn:dk:healthcare:no-role" i forespørgslen for at angive at der ikke ønskes en rolle eller autorisation på ID-kortet. |
| Autorisation og rolle i samme forespørgsel | |||
|---|---|---|---|
| Certifikat udløbet | |||
| STS svar | faultcode = wst:FailedAuthentication faultactor = dk:sosi:sts:* faultstring = Certificate expired or not yet valid | ||
| Årsag | Anvender | ||
| Forklaring | Den medsendte forespørgsel er signeret med et udløbet certifikat. | ||
| Løsning | Anvendersystemet skal forny sit certifikat og benytte dette. Endvidere skal NSP konfigureres til at tillade det nye certifikat | ||
| Certifikat udløbet for token signatur | |||
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:*bst2sosi faultstring = En af følgende:
| ||
| Årsag | Anvender | Årsag | Anvender eller konfiguration |
| Forklaring | Det indeholdte token er signeret med et udløbet certifikater for denne omveksling ikke tilladt at specificere både UserAuthorizationCode og UserRole i samme forespørgsel. | ||
| Løsning | Kontakt NSP support. Den Idp (typisk Nem-id) som signerer token skal benytte et nyt certifikat, NSP skal konfigureres til at stole på dette. | Fjern enten UserAuthorizationCode eller UserRole fra forespørgslen. | |
Validering af claims
| Manglende CPR claimCertifikat endnu ikke gyldigt for token signatur | ||
|---|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:* faultstring = En af følgende:
| |
| Årsag | Anvender eller konfiguration | |
| Forklaring | Det indeholdte token er signeret med et certifikat der endnu ikke kan benyttesDen medsendte forespørgsel indeholder ikke et CPR claim. | |
| Løsning | Et af følgende:
| Fremsend en ny forespørgsel med et gyldigt CPR claim (og overvej at stramme op på klient systemets input validering). |
| Ugyldigt CPR claimCertifikat revokeret | ||
|---|---|---|
| STS svar | faultcode = wst:FailedAuthenticationInvalidRequest faultactor = dk:sosi:sts:* faultstring = Certificate revokedCPR-number must be 10 digits | |
| Årsag | Anvender | |
| Forklaring | Den medsendte forespørgsel er signeret med et revokeret certifikatindeholder et CPR claim i ugyldigt format. | |
| Løsning | Anvendersystemet skal forny sit certifikat og benytte dette. Endvidere skal NSP konfigureres til at tillade det nye certifikat | Fremsend en ny forespørgsel med et gyldigt CPR claim (og overvej at stramme op på klient systemets input validering). |
| Forkert CPR claimCertifikat revokeret for token signatur | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:*its faultstring = En af følgende:
|
| Årsag | Anvender eller konfiguration |
| Forklaring | Det indeholdte token er signeret med et revokeret certifikat. |
| Løsning | Kontakt NSP support. Den Idp (typisk Nem-id) som signerer token skal benytte et nyt certifikat, NSP skal konfigureres til at stole på dette. |
| CPR/PID mismatch | |
| Årsag | Anvender |
| Forklaring | Det medsendte påståede CPR matcher ikke cpr nummeret tilknyttet brugerens certifikat. Brugeren har formentlig tastet forkert. |
| Løsning | Fremsend en ny forespørgsel med et gyldigt CPR claim. |
| Forkert CPR claim | ||
|---|---|---|
| STS | ||
| Certifikat ikke konfigureret | ||
| STS svar | faultcode = wst:FailedAuthenticationInvalidRequest faultactor = dk:sosi:sts:*its faultstring = Signing certificate not whitelisted for this audienceCpr claim does not match cpr in assertion or Subject NameID. | |
| Årsag | Anvender | |
| Forklaring | Det signerende certifikat er ikke whitelistet til at det angivne audiencemedsendte påståede CPR matcher ikke cpr nummeret i det medsendte token, eller Subject NameID. Brugeren har formentlig tastet forkert. | |
| Løsning | Kontakt NSP support med henblik på at få det ønskede certifikat whitelistet. | Fremsend en ny forespørgsel med et gyldigt CPR claim. |
| Fejl i validering af CPR claimUgyldig udsteder | |
|---|---|
| STS svar | faultcode = wst:FailedAuthenticationInvalidRequest faultactor = dk:sosi:sts:its faultstring = Authentication failed: certificate issued by invalid partyUnable to validateScope cpr |
| Årsag | AnvenderSTS |
| Forklaring | Det underskrivende certifikat er ikke udstedt i føderationen og kan derfor ikke anvendes til udstedelse af ID-kort. |
| Løsning |
|
| STS'en kunne ikke validere gyldigheden af det medsendte påståede CPR. | |
| Løsning | Kontakt NSP support for at få fejlen undersøgt nærmere. |
| Tomt OnBehalfOf claim | ||
|---|---|---|
| STS svar | ||
| Certifikat ikke trusted for token signatur | ||
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:*its faultstring = The certificate that signed the security token is not trustedOnBehalfOf claim must not be empty | |
| Årsag | Anvender eller konfiguration | |
| Forklaring | Det indeholdte token er signeret med et certifikat, som ikke accepteres af STS. Token bør typisk være signeret af Nem-idDen medsendte forespørgsel indeholder et tomt OnBehalfOf claim. | |
| Løsning | Anvend et token signeret af Nem-id, eller kontakt NSP support med henblik på alternativ løsning om nødvendigt (der findes et anvendeligt alternativ i testmiljøerne)) | Fremsend en ny forespørgsel, enten uden OnBehalfOf claim eller med et gyldigt OnBehalfOf claim (og overvej at stramme op på klient systemets input validering). |
| Ugyldigt OnBehalfOf claimCertifikat ikke whitelisted | |
|---|---|
| STS svar | faultcode = wst:FailedAuthenticationInvalidRequest faultactor = dk:sosi:sts:its faultstring = En af følgende:
|
| Årsag | STS |
| Forklaring | Det underskrivende certifikat er ikke whitelisted i STS’en og kan derfor ikke udstede ID-kort. |
| Løsning | Kontakt NSP support med henblik på at få det ønskede certifikat whitelistet. |
| No privileges provided by procuration | |
| Årsag | Anvender |
| Forklaring | Den påståede fuldmagt (OnBehalfOf) findes ikke. |
| Løsning |
|
| Fejl i validering af OnBehalfOf claimMOCES certifikat blacklisted | ||
|---|---|---|
| STS svar | faultcode = wst:FailedAuthenticationInvalidRequest faultactor = dk:sosi:sts:its faultstring = Authentication failed: MOCES is blacklisted [*]Unable to get procurations | |
| Årsag | STS | |
| Forklaring | Det underskrivende certifikat er blacklisted i STS’en og kan derfor ikke udstede ID-kortSTS'en kunne ikke validere gyldigheden af den medsendte påståede fuldmagt. | |
| Løsning |
| Kontakt NSP support for at få fejlen undersøgt nærmere. |
| Ugyldige claimsUgyldig certifikat type | |
|---|---|
| STS svar | faultcode = wst:FailedAuthenticationInvalidRequest faultactor = dk:sosi:sts:* faultstring = Authentication failed: signed with unsupported certificate typeThe request was invalid or malformed: Request contains invalid claims. Valid claims are: <validClaims> |
| Årsag | Anvender |
| Forklaring | Typen af det underskrivende certifikat er ikke supporteret af STS. STS understøtter typerne: MOCES, VOCES, FOCES, POCES |
| Løsning | Benyt et certifikat med et af de understøttede typer. |
| Forespørgslen indeholder claims som ikke kan bruges til denne type omveksling. | |
| Løsning | Fjern claims fra forespørgslen, som ikke findes i listen af gyldige claims (validClaims). |
Validering af audience
| Angivelse af audience manglerUgyldig certifikat type til signering af ID-kort | |
|---|---|
| STS svar | faultcode = wst:FailedAuthenticationInvalidRequest faultactor = dk:sosi:sts:its faultstring = Authentication failed: must be signed with <certType>Audience is missing |
| Årsag | Anvender |
| Forklaring | ID-kortet skal være signeret af et certifikat med type certType. Bruger ID-kort skal signeres af MOCES certifikater. System ID-kort må ikke signeres af MOCES certifikater. |
| Løsning | Signer ID-kortet med et certifikat af typen certType. |
| Den medsendte forespørgsel indeholder ikke angivelse af et audience (som det udstedte token kan benyttes til) | |
| Løsning | Anvendersystemet tilrettes til at medsende audience (dette vil ofte være https://fmk). |
| Ukendt audienceUgyldig percistence level af MOCES3 certifikat | |||
|---|---|---|---|
| STS svar | faultcode = wst: FailedAuthenticationInvalidRequest En af følgende:
| ||
| Årsag | Anvender eller konfiguration | ||
| Forklaring | Der er benyttet et MOCES3 certifikat, som ikke har global persistence level, til at signere ID-kortet. | Løsning | Signer ID-kortet med et MOCES3 certifikat med global persistence levelDen medsendte forespørgsel indeholder angivelse af et ukendt audience (som det udstedte token kan benyttes til) |
| Løsning | Anvendersystemet tilrettes til at medsende korrekt audience (dette vil ofte være https://fmk). Hvis medsendte audience er korrekt, kontaktes NSP support for at få konfigureret STS med dette audience. | ||
| Ukendt audience for issuer | ||||
|---|---|---|---|---|
| STS svar | faultcode = wst:RequestFailed faultactor = faultstring = | Årsag | Forklaring | Løsning |
Validering af token
| dk:sosi:sts:its faultstring = BST2IDWS assertion has an invalid audience. Actual audience:<audience>, Allowed audience:<allowedAudience> | |
| Årsag | Anvender eller konfiguration |
|---|---|
| Forklaring | Det angivne audience er ikke tilladt for udstederen af det medsendte token |
| Løsning | Sørg for at 'AudienceRestriction' på det medsendte token er allowedAudience |
| Ukendt audience for BST2SOSI forespørgsel |
|---|
| STS svar | faultcode = wst: |
|---|---|
| RequestFailed faultactor = dk:sosi:sts: |
| bst2sosi faultstring = |
| BST2SOSI assertion does not have allowed audience. Actual type:<audience>, Allowed type:<allowedAudience> |
| Årsag |
|---|
| Anvender | |
| Forklaring | BST2SOSI omvekslingen kræver en bestemt audience (allowedAudience). |
|---|---|
| Løsning | Lav en ny forespørgsel hvor audience på tokenet er allowedAudience. |
Validering af signatur
| Ugyldig signatur |
|---|
| Ugyldigt nameid | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:its* faultstring = Invalid name: <nameid>Unable to validate envelope signature |
| Årsag | UkendtAnvender |
| Forklaring | Det indeholdte token indeholder et ugyldigt formateret nameid. |
| Løsning | Hvis token er udstedt af Nem-id, kontaktes NSP supporten med henblik på analyse af fejlen. |
| Den medsendte forespørgsel indeholder ingen eller en ugyldig xml signatur - dette sker ofte ved omformatering af indeholdet på en signeret besked | |
| Løsning | Anvendersystemet tilrettes til at signere og/eller undgå omformatering i forbindelse med afsendelse |
| Ugyldig token signaturToken udløbet | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:its* faultstring = En af følgende
|
| Årsag | Oftest anvender |
| Forklaring | Det indeholdte token er udløbet. |
| Løsning | Hent og benyt et nyt token. |
| Signature on OIOSAMLAssertion is invalid | |
| Årsag | Anvender |
| Forklaring | Den medsendte forespørgsel indeholder et bootstrap token med ugyldig xml signatur - dette sker ofte ved omformatering af indeholdet på en signeret besked |
| Løsning | Anvendersystemet tilrettes til at signere og/eller undgå omformatering i forbindelse med afsendelse |
| Certifikat udløbetToken kan ikke dekrypteres | |
|---|---|
| STS svar | faultcode = wst:InvalidRequestFailedAuthentication faultactor = dk:sosi:sts:* faultstring = Unable to decrypt elementCertificate expired or not yet valid |
| Årsag | Anvender |
| Forklaring | Den medsendte forespørgsel indeholder et token, som er krypteret med en nøgle som ikke er kendt af STS’en |
| Løsning | Kan f.eks. skyldes manglende kryptering, kryptering med forkert nøgle, eller at der er "pillet" ved data efter kryptering. |
| signeret med et udløbet certifikat. | |
| Løsning | Anvendersystemet skal forny sit certifikat og benytte dette. Endvidere skal NSP konfigureres til at tillade det nye certifikat |
| Certifikat udløbet for token signatur |
|---|
| STS svar | faultcode = wst: |
|---|---|
InvalidRequest |
* |
En af følgende:
| |
| Årsag | Anvender eller konfiguration |
|---|---|
| Forklaring |
| Det indeholdte token er signeret med et udløbet certifikat. |
| Løsning |
|---|
faultactor =
faultstring =
Validering af Authentication Level
| Kontakt NSP support. Den Idp (typisk Nem-id) som signerer token skal benytte et nyt certifikat, NSP skal konfigureres til at stole på dette. |
| Certifikat endnu ikke gyldigt for token signatur |
|---|
| STS svar | faultcode = wst: |
|---|
InvalidRequest |
Validering af ID-kort
En af følgende:
| |
| Årsag | Anvender eller konfiguration |
|---|---|
| Forklaring | Det indeholdte token er signeret med et certifikat der endnu ikke kan benyttes. |
| Løsning | Et af følgende:
|
| Certifikat revokeretUgyldig ID-kort version | |
|---|---|
| STS svar | faultcode = wst:RequestFailedFailedAuthentication faultactor = dk:sosi:sts:seal* faultstring = The specified request failed IDCard version ’*’ not supported. Supported versions are: [1.0.1,1.0]Certificate revoked |
| Årsag | Anvender |
| Forklaring | Forespørgslen indeholder et ID-kort med en version der ikke understøttes af STS (se DGWS for detaljer). |
| Løsning | Klienten rettes, så kun understøttede ID-kort versioner anvendes. Nyere versioner af både Seal.Java og Seal.NET producerer ID-kort med korrekt version. |
| Den medsendte forespørgsel er signeret med et revokeret certifikat. | |
| Løsning | Anvendersystemet skal forny sit certifikat og benytte dette. Endvidere skal NSP konfigureres til at tillade det nye certifikat |
|---|
| Certifikat revokeret for token signatur | |
|---|---|
| STS svar | faultcode = wst: |
| InvalidRequest faultactor = dk:sosi:sts:* faultstring = |
En af følgende:
| |
| Årsag | Anvender eller konfiguration |
|---|---|
| Forklaring | Det indeholdte token er signeret med et revokeret certifikat. |
| Løsning | Kontakt NSP support. Den Idp (typisk Nem-id) som signerer token skal benytte et nyt certifikat, NSP skal konfigureres til at stole på dette. |
| Fejl i validering af certifikat |
|---|
| STS svar | faultcode = wst: |
|---|---|
| FailedAuthentication faultactor = dk:sosi:sts:* faultstring = |
| Authentication failed: Certificate invalid (<errorMessage>) |
| Årsag |
|---|
| Ukendt |
| Forklaring |
|---|
| Noget gik galt i valideringen af det signerende certifikat. | |
| Løsning | Kontakt NSP support med henblik på analyse af fejlen. |
|---|
| Certifikat ikke konfigureret for audience | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication |
- Undersøg om anvenderens IT-system anvender korrekt tid
- Check om NTP anvendes, evt. hyppighed og NTP server
- Synkroniser tid
| ID-kort for gammelt til denne modtager | |
|---|---|
| STS svar | faultcode = wst:InvalidTimeRange faultactor = dk:sosi:sts:* faultstring = The requested time range is invalid or unsupported: IDCard is too old Signing certificate not whitelisted for this audience: * [*>*] |
| Årsag | Anvender |
| Forklaring | Ved billetomveksling kan der være lagt begrænsninger på hvor gammelt det id-kort som søges vekslet må være. Medsendt i fejlteksten er modtager, samt aktuel og maksimal alder på id-kortet i minutter. Dette vil typisk være 24 timer, men kan for visse modtagere være mindre. |
| Løsning | Forny ID-kortet og få det signeret af STS. |
| Det signerende certifikat er ikke whitelistet for det angivne audience. | |
| Løsning | Kontakt NSP support med henblik på at få det ønskede certifikat whitelistet. |
| Certifikat ikke konfigureret for issuer | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication faultactor = dk:sosi:sts:* faultstring = Signing certificate not whitelisted for this issuer |
| Årsag | Anvender |
| Forklaring | Det signerende certifikat er ikke whitelistet for udstederen af ID-kortet. |
| Løsning | Kontakt NSP support med henblik på at få det ønskede certifikat whitelistet. |
| Ugyldig udsteder | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication faultactor = dk:sosi:sts faultstring = Authentication failed: certificate issued by invalid party |
| Årsag | Anvender |
| Forklaring | Det underskrivende certifikat er ikke udstedt i føderationen og kan derfor ikke anvendes til udstedelse af ID-kort. |
| Løsning |
|
| Certifikat ikke trusted for token signatur | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:* faultstring = The certificate that signed the security token is not trusted |
| Årsag | Anvender eller konfiguration |
| Forklaring | Det indeholdte token er signeret med et certifikat, som ikke accepteres af STS. Token bør typisk være signeret af Nem-id. |
| Løsning | Anvend et token signeret af Nem-id, eller kontakt NSP support med henblik på alternativ løsning om nødvendigt (der findes et anvendeligt alternativ i testmiljøerne)) |
| Certifikat ikke whitelisted | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication
|
| Årsag | STS |
| Forklaring | Det underskrivende certifikat er ikke whitelisted i STS’en og kan derfor ikke udstede ID-kort. |
| Løsning | Kontakt NSP support med henblik på at få det ønskede certifikat whitelistet. |
| MOCES certifikat blacklisted | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication faultactor = dk:sosi:sts faultstring = Authentication failed: MOCES is blacklisted [*] |
| Årsag | STS |
| Forklaring | Det underskrivende certifikat er blacklisted i STS’en og kan derfor ikke udstede ID-kort. |
| Løsning |
|
| Ugyldig certifikat type | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication faultactor = dk:sosi:sts faultstring = Authentication failed: signed with unsupported certificate type |
| Årsag | Anvender |
| Forklaring | Typen af det underskrivende certifikat er ikke supporteret af STS. STS understøtter typerne: MOCES, VOCES, FOCES, POCES |
| Løsning | Benyt et certifikat med et af de understøttede typer. |
| Ugyldig certifikat type til signering af ID-kort | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication faultactor = dk:sosi:sts faultstring = Authentication failed: must be signed with <certType> |
| Årsag | Anvender |
| Forklaring | ID-kortet skal være signeret af et certifikat med type certType. Bruger ID-kort skal signeres af MOCES certifikater. System ID-kort må ikke signeres af MOCES certifikater. |
| Løsning | Signer ID-kortet med et certifikat af typen certType. |
| Ugyldig percistence level af MOCES3 certifikat | |
|---|---|
| STS svar | faultcode = wst:FailedAuthentication faultactor = dk:sosi:sts faultstring = Authentication failed: signed with unsupported certificate - persistence level of moces3 certificates must be global |
| Årsag | Anvender |
| Forklaring | Der er benyttet et MOCES3 certifikat, som ikke har global persistence level, til at signere ID-kortet. |
| Løsning | Signer ID-kortet med et MOCES3 certifikat med global persistence level |
| Bruger id-kort signeret med VOCES/FOCES certifikat | |
|---|---|
| STS svar | faultcode = wst:BadRequest faultactor = dk:sosi:sts faultstring = The specified RequestSecurityToken is not understood: ID-Card is a User ID-Card signed with VOCES/FOCES |
| Årsag | Anvender |
| Forklaring | Bruger ID-kortet er signeret med et VOCES eller FOCES certifikat. STS'en tillader kun Bruger ID-kort signeret med et MOCES certifikat. |
| Løsning | Benyt et MOCES certifikat til at signere ID-kortet |
| Manglende elementer i signatur | |
|---|---|
| STS svar | faultcode = wst:AuthenticationBadElements faultactor = dk:sosi:sts:seal faultstring = Insufficient Digest Elements: * |
| Årsag | Anvender |
| Forklaring | Den medsendte forespørgsel indeholder en xml signatur med manglende elementer. |
| Løsning | Undersøg om noget er gået galt i forbindelse med signeringen af forespørgslen. |
Validering af token
| Token ikke udstedt til borger | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:its faultstring = Token not issued to a citizen |
| Årsag | Anvender |
| Forklaring | Det indeholdte token er ikke udstedt på baggrund af en borgers certifikat. Kun borger-certifikater kan anvendes |
| Løsning | Anvend et token udstedet på baggrund af et borger certifikat (POCES). |
| Ugyldigt nameID | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest
|
| Årsag | Ukendt |
| Forklaring | Det indeholdte token indeholder et ugyldigt formateret nameID. |
| Løsning | Hvis token er udstedt af Nem-id, kontaktes NSP supporten med henblik på analyse af fejlen. |
| Token udløbet | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest
|
| Årsag | Oftest anvender |
| Forklaring | Det indeholdte token er udløbet. |
| Løsning | Hent og benyt et nyt token. |
| Token kan ikke dekrypteres | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest eller wst:RequestFailed
|
| Årsag | Anvender |
| Forklaring | Den medsendte forespørgsel indeholder et token, som er krypteret med en nøgle som ikke er kendt af STS’en |
| Løsning | Kan f.eks. skyldes manglende kryptering, kryptering med forkert nøgle, eller at der er "pillet" ved data efter kryptering. |
| Ugyldig SAML token type | |
|---|---|
| STS svar | faultcode = wst:RequestFailed
|
| Årsag | Anvender |
| Forklaring | Den medsendte forespørgsel indeholder en token type, der ikke er gyldig for denne forespørgsel. |
| Løsning | Benyt et token med en af de gyldige typer (allowedTypes) |
| Ukendt token issuer | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest eller wst:RequestFailed
|
| Årsag | Anvender, STS |
| Forklaring | Udstederen (issuer) af det medsendte token er ikke kendt af STS'en |
| Løsning | Undersøg om det medsendte token har sat issuer korrekt. Hvis udstederen af tokenet er korrekt, skal NSP support kontaktes for at få STS'en konfigureret med denne udsteder. |
| Manglende STS token scope | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:its faultstring = Incoming JSON webtoken not scoped for this sts: <scope> |
| Årsag | Anvender |
| Forklaring | Listen af scopes i det medsendte token indeholder ikke det krævede STS scope for denne type forespørgsel. |
| Løsning |
|
| Manglende jwt scope konfiguration for audience | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:its faultstring = JWT scope not configured for audience <audience> |
| Årsag | STS |
| Forklaring | Det medsendte audience er ikke konfigureret med et krævet jwt scope |
| Løsning | Kontakt NSP support med henblik på at rette konfigurationen for dette audience. |
| Manglende audience token scope | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:its faultstring = Incoming JSON webtoken not scoped for audience (<audience>) |
| Årsag | Anvender |
| Forklaring | Listen af scopes i det medsendte token indeholder ikke det krævede scope for dette audience. |
| Løsning |
|
| Manglende certsubdn på jwt token | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:its faultstring = JWT claim missing: certsubdn |
| Årsag | Anvender |
| Forklaring | Medsendte jwt token mangler feltet "certsubdn" |
| Løsning | Udsted et nyt jwt token, hvor feltet "certsubdn" er inkluderet. |
| Manglende IT System | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest
|
| Årsag | Anvender |
| Forklaring | Feltet "ITSystemName" er påkrævet for denne type forespørgsel. |
| Løsning | Lav en ny forespørgsel, hvor "ITSystemName" er specificeret. |
| Ugyldig basic privileges | |
|---|---|
| STS svar | faultcode = wst:RequestFailed faultactor = dk:sosi:sts:bst2sosi faultstring = BST2SOSI assertion contains an invalid basic privilege profile |
| Årsag | Anvender |
| Forklaring | "privileges" på det medsendte bootstrap token har et ugyldigt format og kunne ikke læses af STS'en. |
| Løsning | Fjern "privileges" feltet eller ret det til et gyldigt format. |
| Manglende RID eller UUID på bootstrap token | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:bst2sosi faultstring = BST2SOSI assertion must contain one of the attributes: '<ridAttribute>' or '<uuidAttribute>' |
| Årsag | Anvender |
| Forklaring | For den medsendte token type, kræves enten et RID nummer eller et UUID |
| Løsning | Tilføj RID nummer eller UUID til medsendte token |
| Manglende UUID på bootstrap token | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:bst2sosi faultstring = BST2SOSI assertion must contain the attribute '<uuidAttribute>' |
| Årsag | Anvender |
| Forklaring | For den medsendte token type, kræves et UUID |
| Løsning | Tilføj UUID til medsendte token |
| Manglende token i forespørgsel | |
|---|---|
| STS svar | faultcode = wst:RequestFailed faultactor = dk:sosi:sts faultstring = The specified request failed: No assertion element found on request. |
| Årsag | Anvender |
| Forklaring | Forespørgslen mangler et bootstrap token (assertion) |
| Løsning | Undersøg hvorfor forespørgslen er blevet lavet uden et bootstrap token |
| Manglende token attribut | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:* faultstring = The request was invalid or malformed: Mandatory '<attributeID>' SAML attribute (<attributeName>) is missing |
| Årsag | Anvender |
| Forklaring | En påkrævet attribut manger i det medsendte token. |
| Løsning | Lav en ny forespørgsel hvor den påkrævede attribut er inkluderet i tokenet. |
Validering af Assurance/Authentication Level
| Ugyldig assurance level type | |
|---|---|
| STS svar | faultcode = wst:RequestFailed
|
| Årsag | Anvender |
| Forklaring | Det medsendte token har en assurance level type, der ikke kan benyttes på et token af denne type. Der findes to assurance level typer:
|
| Løsning | Lav en ny forespørgsel hvor assurance level typen er skiftet til den anden type. |
| Ugyldig assurance level | |
|---|---|
| STS svar | faultcode = wst:RequestFailed
|
| Årsag | Anvender |
| Forklaring | Det medsendte token har en assurance level, der er ugyldig for denne type forespørgsel. |
| Løsning | Lav en ny forespørgsel, hvor det medsendte token har en af de foreslåede assurance levels. |
| Ugyldig assurance level | |
|---|---|
| STS svar | faultcode = wst:AssuranceLevel faultactor = dk:sosi:sts:nbo faultstring = Assurance level other than 3 or 4 is not accepted |
| Årsag | Anvender |
| Forklaring | Det medsendte token har en assurance level, der er ugyldig for denne type forespørgsel. Der accepteres kun assurance level 3 og 4 |
| Løsning | Lav en ny forespørgsel, hvor det medsendte token har assurance level 3 eller 4. |
| Ugyldig authentication level | |
|---|---|
| STS svar | faultcode = wst:RequestFailed faultactor = dk:sosi:sts faultstring = The specified RequestSecurityToken is not understood: Authentication level not supported (*) |
| Årsag | Anvender |
| Forklaring | Forespørgslen indeholder et ID-kort med et authentication level der ikke er understøttet, dvs. forskelligt fra level 3 eller 4 (se DGWS for detaljer). |
| Løsning | Klienten rettes, så kun understøttede authentication level versioner anvendes. |
| Ugyldigt id-kort med authentication level 3 | |
|---|---|
| STS svar | faultcode = wst:BadRequest faultactor = dk:sosi:sts faultstring = The specified RequestSecurityToken is not understood: ID-Card is not a System ID-Card |
| Årsag | Anvender |
| Forklaring | Det medsendte ID-kort har authentication level 3, men er ikke et System ID-kort. |
| Løsning | Ret ID-kortet så det matcher et System ID-kort |
| Ugyldigt id-kort med authentication level 4 | |
|---|---|
| STS svar | faultcode = wst:BadRequest faultactor = dk:sosi:sts faultstring = The specified RequestSecurityToken is not understood: ID-Card is not a User ID-Card |
| Årsag | Anvender |
| Forklaring | Det medsendte ID-kort har authentication level 4, men er ikke et Bruger ID-kort. |
| Løsning | Hvis der ønskes et Bruger ID-kort: Ret ID-kortet så det matcher et Bruger ID-kort Hvis der ønskes et System ID-kort: Ret authentication level til 3 |
Validering af ID-kort
| Ugyldig ID-kort versionUgyldigt nameId | |
|---|---|
| STS svar | faultcode = wst:BadRequestRequestFailed faultactor = dk:sosi:sts:seal faultstring = The specified RequestSecurityToken is not understood: IDCard nameId must match information from certificate.request failed IDCard version ’*’ not supported. Supported versions are: [1.0.1,1.0] |
| Årsag | Anvender |
| Forklaring | nameId på ID-kortet indeholder certifikat informationer, som ikke matcher certifikatet der har signeret ID-kortet |
| Løsning |
|
| CVR uoverensstemmelse | |
| Forespørgslen indeholder et ID-kort med en version der ikke understøttes af STS (se DGWS for detaljer). | |
| Løsning | Klienten rettes, så kun understøttede ID-kort versioner anvendes. Nyere versioner af både Seal.Java og Seal.NET producerer ID-kort med korrekt version. |
| Ugyldigt tidsinterval på ID-kort | |
|---|---|
| STS svar | faultcode = wst: |
| InvalidTimeRange faultactor = dk:sosi:sts faultstring = |
| The requested time range is invalid or unsupported: IDCard have maximum validity of 24 hours + [*] | |
| Årsag | Anvender |
|---|---|
| Forklaring | Forespørgslen anmoder om et ID-kort med gyldighed mere end 24 timer, hvilket ikke understøttes (se DGWS for detaljer). |
| Løsning | Klienten rettes, så kun ID-kort med gyldighed på 24 timer eller mindre forsøges udstedt. |
| Ugyldigt tidsinterval på ID-kort |
|---|
- Verificer CVR nummer i STS forespørgsel
- Find CVR i certifikatet
| STS svar | faultcode = wst:InvalidTimeRange eller wst: |
|---|---|
FailedAuthentication |
En af følgende:
| |
| Årsag | Anvender, STS |
|---|---|
| Forklaring | ID-kortet er udstedt på et system, der ikke er tidssynkroniseret med STS. Hvis tiden afviger signifikant (der tillades nogen tidsdrift), kan ID-kortet ikke udstedes. |
| Løsning | Såfremt STS tiden ikke er korrekt vil der generelt være problemer med udstedelsen af ID-kort. Fejlen vil derfor overvejende skulle fejlsøges hos anvenderen:
|
| ID-kort for gammelt til denne modtager | Det medsendte ID-kort har authentication level 3, men er ikke et System ID-kort. | |
|---|---|---|
| Løsning | Ret ID-kortet så det matcher et System ID-kort | |
| Ugyldigt id-kort med authentication level 4 | ||
| STS svar | faultcode = wst: BadRequestInvalidTimeRange eller wst:FailedAuthentication En af følgende:
| |
| Årsag | Anvender | |
| Forklaring | Det medsendte ID-kort har authentication level 4, men er ikke et Bruger ID-kort. | Ved billetomveksling kan der være lagt begrænsninger på hvor gammelt det id-kort som søges vekslet må være. Dette vil typisk være 24 timer, men kan for visse modtagere være mindre. |
| Løsning | Forny ID-kortet og få det signeret af STS. | |
| Ugyldigt nameId | |
|---|---|
| Løsning | Hvis der ønskes et Bruger ID-kort: Ret ID-kortet så det matcher et Bruger ID-kort Hvis der ønskes et System ID-kort: Ret authentication level til 3 |
| Bruger id-kort signeret med VOCES/FOCES certifikat | |
| STS svar | faultcode = wst:BadRequest faultactor = dk:sosi:sts faultstring = The specified RequestSecurityToken is not understood: ID-Card is a User ID-Card signed with VOCES/FOCESIDCard nameId must match information from certificate. |
| Årsag | Anvender |
| Forklaring | Bruger nameId på ID-kortet er signeret med et VOCES eller FOCES certifikat. STS'en tillader kun Bruger ID-kort signeret med et MOCES certifikat. |
| Løsning | Benyt et MOCES certifikat til at signere ID-kortet |
| indeholder certifikat informationer, som ikke matcher certifikatet der har signeret ID-kortet | |
| Løsning |
|
| CVR uoverensstemmelse | ||||||
|---|---|---|---|---|---|---|
| STS svar | faultcode = wst:FailedAuthentication faultactor = dk:sosi:sts faultstring = Authentication failed: cvr mismatch | |||||
| Årsag | Anvender | |||||
| Forklaring | CVR i ID-kortet svarer ikke til CVR i certifikatets subject serial number. | |||||
| Løsning |
| svarfaultcode = faultactor = faultstring = | Årsag | Forklaring | Løsning |
|
| Ugyldigt ID-kort i Identity Token Request | |
|---|---|
| STS svar | faultcode = wst:InvalidRequest faultactor = dk:sosi:sts:its faultstring = The request was invalid or malformed: identity token service only support user card. |
| Årsag | Anvender |
| Forklaring | Identity Token Request indeholder en ID-kort, som ikke er et gyldigt Bruger ID-kort. |
| Løsning | Undersøg ID-kortet i forespørgslen for fejl. Undersøg f.eks. om ID-kortet indeholder UserInfo. |
