Jämförda versioner

Nyckel

  • Dessa rader lades till.
  • Denna rad togs bort.
  • Formateringen ändrades.
Info

Arbete pågår

Revisionshistorik

...

Version

...

Datum

...

Författare

...

Kommentar

...

 

...

...

 

...

 

...

Sammanfattning

Vid klientregistrering anges vilka attribut (claims) som skall finnas tillgängliga för klienten vid en autentiseringsbegäran.

Vid autentiseringsbegäran anges vilka attribut (claims) som efterfrågas, och huruvida de är tvingande (essential) eller inte.

Tillgängliga claims och scopes

  • Claim = attribut
  • Scope = en samling av claims

Attributlistan visar vilka claims och scopes som kan levereras av IdP. Notera att varje claim ingår i ett scope.

Klientregistrering

Vid klientregistrering anges vilka claims som är godkända för IdP att släppa ifrån sig till klienten.

Scopet "openid" och de claims som ingår däri är obligatoriska och behöver inte specificeras. Övriga tillåtna attribut kan anges ett och ett som claims eller gruppvis som scopes. Vid registreringen sparas allting som enskilda claims oavsett.

Autentiseringsbegäran

Autentiseringsbegäran måste specificera vilka attribut som skall returneras efter en lyckad autentisering.

Attributbegäran görs via två fält i autentiseringsbegäran: scope och/eller claims.

De begärda attributen filtreras och IdP returnerar endast de begärda attribut som är godkända i klientregistreringen enligt ovan.

Begärda claims eller scopes som inte finns definierade i Attributlistan ignoreras av IdP.

scope

https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims

Det obligatoriska "openid"-scopet i autentiseringsbegäran kan kompletteras med ytterligare scopes.

Kodblock
themeMidnight
titleEx: Begära alla attribut via scope
scope = openid commission authorization_scope personal_identity_number

De claims som ingår i begärda scopes levereras både i id-token i autentiseringssvaret och går att hämta från UserInfo-endpointen.

claims

https://openid.net/specs/openid-connect-core-1_0.html#ClaimsParameter

  • Begärs ett och ett.
  • Anges separat huruvida attributet skall returneras i svarets id-token och/eller levereras från UserInfo-endpointen.
  • Kan markeras som essential, d.v.s. tvingande.
    • Motsvarar fältet "isRequired" i SAML
    • Om IdP inte kan leverera ett tvingande attribut så kommer den signalera att inloggningen misslyckades.
Kodblock
themeMidnight
titleEx: Begära attribut via claims
claims = {
	"userinfo" : {
		"given_name" : null,
		"mobileTelephoneNumber" : {
			"essential" : true
		},
		"healthCareUnitName" : {
			"essential" : true
		},
		"commissionRight" : null
	},
	"id_token" : {
		"healthCareUnitHsaId" : {
			"essential" : true
		},
		"healthCareUnitName" : null
	}
}
 

Filtrering av authorization_scope

Styrning av vilka authorization_scope som returneras görs genom att skicka med ett värde som jämförs med underattributet authorizationScopeCode. Detta kan användas tillsammans med essential-flaggan för att direkt kräva att en användare har en administrativ roll inom rätt område för att få utföra en inloggning.

Kodblock
themeMidnight
titleexempel på authorization_scope
"authorizationScope" : [{
            "authorizationScopePropertyName" : "Tjänstesupport",
            "authorizationScopeName" : "Säkerhetstjänster",
            "authorizationScopeCode" : "BIF",
            "authorizationScopePropertyCode" : "BIF;002",
            "authorizationScopeDescription" : "HSA Domain description",
            "authorizationScopePropertyDescription" : "Tjänstesupport Beskrivning",
            "adminCommissions" : [{
                    "adminCommissionHsaId" : "SE1804231406",
                    "sector" : [{
                            "sectorFlag" : true,
                            "name" : "SE111-JLL",
                            "unitHsaId" : "SE111-JLL"
                        },{
                            "sectorFlag" : false,
                            "name" : "SE111-IVA-NAME",
                            "unitHsaId" : "SE111-IVA"
                        }
                    ],
                    "adminCommissionResponsibleOrganisation" : "232100-0214"
                }
            ]
Kodblock
themeMidnight
titleClaims-begäran som kräver att authorizationScopeCode är lika med "BIF"
claims = {
	"userinfo" : {
		"authorizationScope" : {
			"value" : "BIF",
			"essential" : true
		}
	},
	"id_token" : {
		"authorizationScope" : {
			"value" : "BIF",
			"essential" : true
		}
	}
}

Uppdragsval

Vilka attribut som begärts styr huruvida IdP kommer att presentera ett uppdragsval för användaren eller inte.

Inkludera sida
2.5 Attributstyrning OIDC
2.5 Attributstyrning OIDC