Jämförda versioner

Nyckel

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

...

Initierad inloggning (Unsolicited Response) stöds ej i eID Verify.

1.5 SLO – Single Logout

Observera att en SP som skickar SLO till IdP:n samtidigt stoppar all fortsatt federering för användaren. En SP måste vara medveten om vad avsikten vid en utloggning är. En utloggning av användaren i SP:s egna system är en sak, men att även sända en SLO kan orsaka problem om användaren har för avsikt att från en federering arbeta vidare hos annan SP.

2 Metadata

Metadata-filerna beskriver IdP-funktionen mer formellt och innehåller även certifikatet som används för att signera assertions i både test och i produktion.

Vi rekommenderar att ni i ert SP-system antingen har en tydlig rutin för att manuellt uppdatera med ny metadata från IdP:n eller att ni bygger in en automatisk hämtning av ny metadatafil. Ibland måste metadatat ändras, exempelvis när certifikatet på IdP:n går ut och måste bytas. Om någon viktig förändring kommer ske i metadatafilen går CGI ut med information till alla kunder i förväg.

Ta alltid ut metadata direkt från IdP test eller IdP produktion för att vara säker på att få senaste version. Detta görs enklast genom att ange nedanstående länkar när ni hämtar hem metadatafilen (xml).

2.1 Metadata för test - Privata legitimationer 

Legitimation

Inloggningsmetod

LoA-nivå

Default Authentication Context

Metadata

BankID

BankID annan enhet

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

BankID

BankID samma enhet

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Freja

Freja+ annan enhet

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Freja

Freja+ samma enhet

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

eIDAS

Foreign eID

3

http://id.swedenconnect.se/loa/1.0/uncertified-eidas-sub

LADDA NER METADATA

Telia

Telia

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Default IdP med samtliga ovanstående inloggningsmetoder, LoA och Authentication Context som är aktiva på kund/sp

LADDA NER METADATA

2.2 Metadata för test - Tjänstelegitimationer

Legitimation

Inloggningsmetod

LoA-nivå

Authentication Context

Metadata 

Siths MTLS

-

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

METADATA KOMMER SNART

Siths

-

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

METADATA KOMMER SNART

Freja OrgID

-

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Default IdP med samtliga ovanstående tjänstelegitimationer, LoA och Authentication Context som är aktiva på kund/sp

LADDA NER METADATA

2.3 Metadata för produktion - Privata legitimationer 

Legitimation

Inloggningsmetod

LoA-nivå

Default Authentication Context

Metadata

BankID

BankID annan enhet

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

BankID

BankID samma enhet

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Freja

Freja+ annan enhet

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Freja

Freja+ samma enhet

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

eIDAS

Foreign eID

3

http://id.swedenconnect.se/loa/1.0/uncertified-eidas-sub

METADATA KOMMER SNART

Telia

Telia

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Default IdP med samtliga ovanstående inloggningsmetoder, LoA och Authentication Context som är aktiva på kund/sp

LADDA NER METADATA

2.4 Metadata för produktion - Tjänstelegitimationer

Legitimation

Inloggningsmetod

LoA-nivå

Authentication Context

Metadata 

Siths MTLS

-

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Siths

-

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

METADATA KOMMER SNART

Freja OrgID

-

3

http://id.swedenconnect.se/loa/1.0/uncertified-loa3

LADDA NER METADATA

Default IdP med samtliga ovanstående tjänstelegitimationer, LoA och Authentication Context som är aktiva på kund/sp

METADATA KOMMER SNART

3 SAML-attribut

Som utgångspunkt och grundkonfiguration följer vi DIGG Tekniskt Ramverk 1.1.4 ( Tekniska anslutningsregler för Sweden Connect-federationen ) samt 1.3.3 ( Tekniska anslutningsregler för Sweden Connect-federationen

Vilket innebär att vi svarar uncertified-loa3 på LoA3. Observera att det tydligt framgår att "Det står en tredjeparts-legitimeringstjänst fritt att definiera egna identifierare" val av att så långt det går följa tekniskt ramverk görs för att upprätthålla en så god interopabilitet som möjligt.

3.1 Attributsprofiler

CGI SLO skall alltid tillämpas för att säkerställa att sessioner inte lever vidare. Av den anledningen bör alltid kunder som har flera SP där SSO nyttjas skicka SLO.

2 Metadata

Metadata-filer beskriver IdP-funktionen mer formellt och innehåller även certifikatet som används för att signera assertions i både test och i produktion.

Vi rekommenderar att ni i ert SP-system antingen har en tydlig rutin för att manuellt uppdatera med ny metadata från IdP:n eller att ni bygger in en automatisk hämtning av ny metadatafil. Ibland måste metadatat ändras, exempelvis när certifikatet på IdP:n går ut och måste bytas. Om någon viktig förändring kommer ske i metadatafilen går CGI ut med information till alla kunder i förväg.

Ta alltid ut metadata direkt från IdP test eller IdP produktion för att vara säker på att få senaste version. Detta görs enklast genom att ange nedanstående länkar när ni hämtar hem metadatafilen (xml).

Metadata för test och produktion finns här: Metadata

3 SAML-attribut

Som utgångspunkt och grundkonfiguration följer vi DIGG Tekniskt Ramverk 1.1.4 ( Tekniska anslutningsregler för Sweden Connect-federationen ) samt 1.3.3 ( Tekniska anslutningsregler för Sweden Connect-federationen

Vilket innebär att vi svarar uncertified-loa3 på LoA3. Observera att det tydligt framgår att "Det står en tredjeparts-legitimeringstjänst fritt att definiera egna identifierare" val av att så långt det går följa tekniskt ramverk görs för att upprätthålla en så god interopabilitet som möjligt.

3.1 Attributsprofiler

CGI har tagit hänsyn till den information som finns i privata e-legitimationer med statlig legitimitet i Sverige samt även arbetet inom EU kring federeringslösningar. Nya SAML-attribut kan komma att tillkomma.

Alla attribut i SAML-biljetten kommer direkt från certifikatet, och i vissa fall är det delar av datat i certifikatet som är utmappat. Attribut från externa datakällor kan framöver också komma att läggas in som tilläggstjänst.

Beroende på e-legitimationsutfärdare kan attribut skilja. Attribut som inte kan mappas mot certifikatinformation plockas bort i svaret.

Valbara attributsprofiler

NAME

FRIENDLY NAME

DESCRIPTION

ELN-AP-Pnr-01

ELN-AP-NaturalPerson-01

ELN-AP-OrgPerson-01

ELN-AP-eIDAS-NatPer-01

DIGG-AP-HSAid-01

urn:oid:2.5.4.4

sn

Surname

X

X

X

X

urn:oid:2.5.4.42

givenName

Given Name

X

X

X

X

urn:oid:2.16.840.1.113730.3.1.241

displayName

Display Name

X

X

X

X

urn:oid:1.2.752.29.4.13

personalIdentity-Number

National civic registration number/code

X

urn:oid:1.3.6.1.5.5.7.9.1

dateOfBirth

Date of birth

X

X

X

urn:oid:1.3.6.1.5.5.7.9.3

gender

Gender

X

urn:oid:1.2.752.201.3.8

birthName

Name at the time of birth

X

urn:oid:2.5.4.6

c

Country

X

urn:oid:1.3.6.1.5.5.7.9.2

placeOfBirth

Place of birth

X

urn:oid:2.5.4.10

o

Organizational name

X

urn:oid:2.5.4.97

organizationIdentifier

Organizational identifier code

X

urn:oid:1.2.752.201.3.1

orgAffiliation

<uid>@<orgnr>

X

urn:oid:1.2.752.201.3.2

transactionIdentifier

Transaction identifier

X

urn:oid:1.2.752.201.3.4

prid

Provisional identifier

X

urn:oid:1.2.752.201.3.5

pridPersistence

Provisional identifier persistence indicator

X

urn:oid:1.2.752.201.3.7

eidasPersonIdentifier

eIDAS uniqueness identifier for natural persons

X

urn:oid:1.2.752.201.3.9

eidasNatural-PersonAddress

eIDAS Natural Person Address

X

urn:oid:1.2.752.29.6.2.1

employeeHsaId

HSA-ID

X

4 e-tjänstelegitimationer

Vi har tagit hänsyn till den information som finns i privata de e-legitimationer med statlig legitimitet i Sverige samt även arbetet inom EU kring federeringslösningar. Nya SAML-attribut kan komma att tillkomma.

Alla attribut i SAML-biljetten kommer direkt från certifikatet, och i vissa fall är det delar av datat i certifikatet som är utmappat. Attribut från externa datakällor kan framöver också komma att läggas in som tilläggstjänst.

Beroende på e-legitimationsutfärdare kan attribut skilja. Attribut som inte kan mappas mot certifikatinformation plockas bort i svaret.

Valbara attributsprofiler

...

NAME

...

FRIENDLY NAME

...

DESCRIPTION

...

ELN-AP-Pnr-01

...

ELN-AP-NaturalPerson-01

...

ELN-AP-OrgPerson-01

...

ELN-AP-eIDAS-NatPer-01

...

DIGG-AP-HSAid-01

...

urn:oid:2.5.4.4

...

sn

...

Surname

...

X

...

X

...

X

...

X

...

urn:oid:2.5.4.42

...

givenName

...

Given Name

...

X

...

X

...

X

...

X

...

urn:oid:2.16.840.1.113730.3.1.241

...

displayName

...

Display Name

...

X

...

X

...

X

...

X

...

urn:oid:1.2.752.29.4.13

...

personalIdentity-Number

...

National civic registration number/code

...

X

...

urn:oid:1.3.6.1.5.5.7.9.1

...

dateOfBirth

...

Date of birth

...

X

...

X

...

X

...

urn:oid:1.3.6.1.5.5.7.9.3

...

gender

...

Gender

...

X

...

urn:oid:1.2.752.201.3.8

...

birthName

...

Name at the time of birth

...

X

...

urn:oid:2.5.4.6

...

c

...

Country

...

X

...

urn:oid:1.3.6.1.5.5.7.9.2

...

placeOfBirth

...

Place of birth

...

X

...

urn:oid:2.5.4.10

...

o

...

Organizational name

...

X

...

urn:oid:2.5.4.97

...

organizationIdentifier

...

Organizational identifier code

...

X

...

urn:oid:1.2.752.201.3.1

...

orgAffiliation

...

<uid>@<orgnr>

...

X

...

urn:oid:1.2.752.201.3.2

...

transactionIdentifier

...

Transaction identifier

...

X

...

urn:oid:1.2.752.201.3.4

...

prid

...

Provisional identifier

...

X

...

urn:oid:1.2.752.201.3.5

...

pridPersistence

...

Provisional identifier persistence indicator

...

X

...

urn:oid:1.2.752.201.3.7

...

eidasPersonIdentifier

...

eIDAS uniqueness identifier for natural persons

...

X

...

urn:oid:1.2.752.201.3.9

...

eidasNatural-PersonAddress

...

eIDAS Natural Person Address

...

X

...

urn:oid:1.2.752.29.6.2.1

...

employeeHsaId

...

HSA-ID

...

X

3.3 e-tjänstelegitimationer

Vi har tagit hänsyn till den information som finns i de e-tjänstelegitimationer som idag har en spridning i Sverige, utgivna av SITHS och Freja OrgID.

eID-tjänsten har en IdP speciellt för e-tjänstelegitimationer, IdP företag. Se 2.2 Tjänstelegitimationer ovan.

BEHÖVS NEDAN TABELL SPECIFIKT FÖR ATT BESKRIVA ATTRIBUT FÖR TJÄNSTELEG? NEJ!

...

NAME

...

FRIENDLY NAME

...

DESCRIPTION

...

XX

...

YY

...

ZZ

...

ÅÅ

...

ÄÄ

...

ÖÖ

4 Exempelmeddelanden IdP

4.1 Authentication Request

Kort förklaring kring vad detta är behövs.

I produktion har CGI:s IdP kontroll på vilka SP som det är tillåtet att skicka svar till. Vi behöver alltså ha adressen AssertionConsumerServiceURL (ACS) som skall användas. Vi kan godkänna alla URL:er under en adress, som: https://sp.exempel.com/*

AssertionConsumerServiceURL kopplas till en SP och ett unikt ServiceID i eID-tjänsten. Om flera olika ”kunder” i samma e-tjänst använder samma AssertionConsumerServiceURL måste även saml:Issuer även användas och detta måste då vara unikt för varje SP.

Men IdP test godkänner * som Issuer/EntityID och AssertionConsumerServiceURL, så för testmiljön kan ni ange vilken adress ni vill.

Expandera
title<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"...

<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="_1e4918edeca3909b15fd301648da48e3bcc2da3724" Version="2.0" IssueInstant="2024-09-26T12:11:47Z" Destination="https://eid-connect.test.funktionstjanster.se/saml2/62b41ad31dbc33e6bb963f44/sso/get" AssertionConsumerServiceURL="https://www.testaeid.se/saml/module.php/saml/sp/saml2-acs.php/default-sp" ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" > <saml:Issuer>https://www.testaeid.se/saml/module.php/saml/sp/metadata.php/default-sp</saml:Issuer> <samlp:NameIDPolicy Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient" AllowCreate="true" /> </samlp:AuthnRequest>

4.2 Authentication Response

...

Expandera
titlexml <saml2p:Response xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"...

<saml2p:Response xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Destination="https://www.testaeid.se/saml/module.php/saml/sp/saml2-acs.php/default-sp" ID="_23f4a13532d16df6b72af01c9a609f35" InResponseTo="_1e4918edeca3909b15fd301648da48e3bcc2da3724" IssueInstant="2024-09-26T12:12:07.060Z" Version="2.0" > <saml2:Issuer>https://eid-connect.test.funktionstjanster.se/saml2/62b41ad31dbc33e6bb963f44</saml2:Issuer> <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:SignedInfo> <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /> <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" /> <ds:Reference URI="#_23f4a13532d16df6b72af01c9a609f35"> <ds:Transforms> <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /> <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"> <ec:InclusiveNamespaces xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="xsd" /> </ds:Transform> </ds:Transforms> <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /> <ds:DigestValue>Z2bVwao15zvB3COMMH6NV9HAktdm33NQxZtpB5ZQ67c=</ds:DigestValue> </ds:Reference> </ds:SignedInfo> <ds:SignatureValue> vUZXfAt8P7usNseebq3Let8IRVOmYdjDT0yT16SprCPAg+/FLTlJWZf3nEyBtllNebxc2pCI/1rn kkxvZeSZFMTKxL/udFxkBzSmD6phQivR6VUSpRPp7QxBXejeAxFX+vcwYrZi441Z81V0sLIxl1S4 lmLOTzEaZVAAPZ6T72g0zPVewGF2FAI0fneXnmaWBgYk/tOLMXi9OpMys468D7TyNXWedkP0WB59 LlW/L2NvnwGUHU6mWPi2Q1znveQFT9XDwemhc29gl1zn5J9ReirojKOT1zh9tIbLk/CqJNvyXQvx pazkVq/N23ijnmEqzwkvAvwt5860bAE0gKSd4A== </ds:SignatureValue> <ds:KeyInfo> <ds:X509Data> <ds:X509Certificate>MIIEejCCAmKgAwIBAgIURCL8DMtCZIWzue3wu3XLu8+bJicwDQYJKoZIhvcNAQELBQAwSDELMAkGA1UEBhMCU0UxFzAVBgNVBAoTDkNHSSBTdmVyaWdlIEFCMSAwHgYDVQQDExdjYS5mdW5rdGlvbnN0amFuc3Rlci5zZTAeFw0yNDAyMTUwMDAwMDBaFw0yNjAyMTQyMzU5NTlaMFAxFDASBgNVBAMTC2RlZmF1bHQtaWRwMRcwFQYDVQQKEw5DR0kgU3ZlcmlnZSBBQjELMAkGA1UEBhMCU0UxEjAQBgNVBAgTCVN0b2NraG9sbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMBEUHzloQ0hFFQfkjBBulMYmj1pFEgvB1RT+/YTT0jAkKs2j3fgy6kit0+S+X33YFPHL/TUdIwOYw1TzpSiAoU3QhLbmOSMF0RiVvSzD18oLm7A3M3TuVlwa4LlZuQSBvAiJWv2Gj5eSiIovYyUiSc2o6xJ4U9L+FDfrvzDDA/+p7AspQUPM724sv9MgjnUm8nUvZ4AyuNk5oaNaXpFg7EqwYmV5En3wATHUW2FlZg9tuN/cv5CYI0cckzrMrFnY0ch0DZRSvnFGHsAqH1+sz0HFO7LaIsyYCqd6vcZmkuJ3vDrbkwgHf0iepVg7nr5sEHTW35g3+1A7eIxPe7cfs0CAwEAAaNUMFIwDAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQU6LFe4ujFshcwv9kqTMAWIhruPdkwCwYDVR0PBAQDAgPoMBYGA1UdEQQPMA2CC2RlZmF1bHQtaWRwMA0GCSqGSIb3DQEBCwUAA4ICAQCo5aqLCF+CsG5IhRdw7tHTUnmEk2wt+JbISJHoZTd6MRGnSLJBJRywOCqklzrHO/wEk9YCtecKmqckg81O/W6LFzNA5C70VsMZC7yct6dQTFq4rbzcKY9mmrp3pu4M91RyInyS54eLI4zuLNrLDtyJg5JOaf9zR2qspjgnNc3rR6JR1HgB5hw5dMYXKpRM+qlzBqVCBaDiwD8q0txbb/QsNglAyLM9+fgAL6goaIf6QBhsFuI/SXd86T5Sbqb7KzZLDeLQ65gtARWcjKPBgY1Va99eE2gUPMAa5OPhsiZnJLZ5TNEuK68o+Ww8jPLMVLCavPAxjD3tr1JErD2V+XMQlsQcdMMFAjn2QNdYj//DmRZWUaQ7erkDl3leRmcojWqe0DNEvVcLhw3lVBbLqfWGiz7UF2ikpsJwIJx5lwnPm+ihG4wVKSgt5hmnxBu9RchsU4KcV5oKswX2oFKvDQ2xYdRByVuO6rjMEQ0+wYnpneNJbD5/OSTJEervqhBCeK/TcD3+AgCoSGeZWH3UpsG45XoW3QAGPzowrijoVoIjpgp/9fY+QOK8pIdP4oU6x/WcZdoM76hiT1t/ZQHqdeLbq+K1QuZZYLf/i6HcznH20rWWmO+BhNVJvTGeJ16f91jPqY4ict30lgfmzkIfTysaktRtOy2h0MpkD9JxP2ZOiw==</ds:X509Certificate> </ds:X509Data> </ds:KeyInfo> </ds:Signature> <saml2p:Status> <saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success" /> </saml2p:Status> <saml2:Assertion ID="_a5770ec4-29ec-4c0a-86e4-97f5a7e4abb0" IssueInstant="2024-09-26T12:12:07.060Z" Version="2.0" > <saml2:Issuer>https://eid-connect.test.funktionstjanster.se/saml2/62b41ad31dbc33e6bb963f44</saml2:Issuer> <saml2:Subject> <saml2:NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">_840460a08876f27d6f92dc2c4d5e94ed</saml2:NameID> <saml2:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> <saml2:SubjectConfirmationData Address="85.119.130.113" InResponseTo="_1e4918edeca3909b15fd301648da48e3bcc2da3724" NotOnOrAfter="2024-09-26T12:28:47.060Z" Recipient="https://www.testaeid.se/saml/module.php/saml/sp/saml2-acs.php/default-sp" /> </saml2:SubjectConfirmation> </saml2:Subject> <saml2:Conditions NotBefore="2024-09-26T12:12:07.060Z" NotOnOrAfter="2024-09-26T12:28:47.060Z" > <saml2:AudienceRestriction> <saml2:Audience>https://www.testaeid.se/saml/module.php/saml/sp/metadata.php/default-sp</saml2:Audience> </saml2:AudienceRestriction> </saml2:Conditions> <saml2:AuthnStatement AuthnInstant="2024-09-26T12:12:07.060Z" SessionIndex="_a5770ec4-29ec-4c0a-86e4-97f5a7e4abb0" SessionNotOnOrAfter="2024-09-26T12:28:47.060Z" > <saml2:SubjectLocality Address="85.119.130.113" /> <saml2:AuthnContext> <saml2:AuthnContextClassRef>http://id.swedenconnect.se/loa/1.0/uncertified-loa3</saml2:AuthnContextClassRef> </saml2:AuthnContext> </saml2:AuthnStatement> <saml2:AttributeStatement> <saml2:Attribute Name="LoginMethod"> <saml2:AttributeValue xsi:type="xsd:string">bankid.qr-start-token</saml2:AttributeValue> </saml2:Attribute> <saml2:Attribute Name="Subject_SerialNumber"> <saml2:AttributeValue xsi:type="xsd:string">197802032388</saml2:AttributeValue> </saml2:Attribute> <saml2:Attribute Name="Subject_Surname"> <saml2:AttributeValue xsi:type="xsd:string">Larsson</saml2:AttributeValue> </saml2:Attribute> <saml2:Attribute Name="Subject_CommonName"> <saml2:AttributeValue xsi:type="xsd:string">Anna Larsson</saml2:AttributeValue> </saml2:Attribute> <saml2:Attribute Name="Subject_GivenName"> <saml2:AttributeValue xsi:type="xsd:string">Anna</saml2:AttributeValue> </saml2:Attribute> </saml2:AttributeStatement> </saml2:Assertion> </saml2p:Response>

4.3 Logout Request

Observera att Logout Request inte per automatik fungerar hela vägen ut i IdP test. IdP:n vet inte var SLO-responsen skall skickas, men användaren blir ändå utloggad ur IdP:n. Skall hela SLO-flödet testas i IdP test måste test-SP konfigureras in speciellt i IdP test vilket normalt inte görs/ingår. I produktion konfigureras SLO normalt för varje SP.

Expandera
title<samlp:LogoutRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"...

<samlp:LogoutRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="_f049fd59522326d6458959d33472ee810a3c86fbcc" Version="2.0" IssueInstant="2024-09-26T12:12:11Z" Destination="https://eid-connect.test.funktionstjanster.se/saml2/62b41ad31dbc33e6bb963f44/slo/get" > <saml:Issuer>https://www.testaeid.se/saml/module.php/saml/sp/metadata.php/default-sp</saml:Issuer> <saml:NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">_840460a08876f27d6f92dc2c4d5e94ed</saml:NameID> <samlp:SessionIndex>_a5770ec4-29ec-4c0a-86e4-97f5a7e4abb0</samlp:SessionIndex> </samlp:LogoutRequest>

4.4 Logout Response

Expandera
title<saml2p:LogoutResponse xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol...

<saml2p:LogoutResponse xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Destination="https://www.testaeid.se/saml/module.php/saml/sp/saml2-logout.php/default-sp" ID="_d4bb887b70dbf783d86d8e76b3247433" InResponseTo="_f049fd59522326d6458959d33472ee810a3c86fbcc" IssueInstant="2024-09-26T12:12:11.403Z" Version="2.0" > <saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">https://eid-connect.test.funktionstjanster.se/saml2/62b41ad31dbc33e6bb963f44</saml2:Issuer> <saml2p:Status xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"> <saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success" /> </saml2p:Status> </saml2p:LogoutResponse>

4.5 Authentication Response – Login Fail + Avbryt/Cancel

Om användaren misslyckas med inloggningen med sin e-legitimation hos IdP visar IdP:n direkt upp felmeddelanden till användaren.

OBS om ni önskar få tillbaka responsen så meddela CGI i samband med beställning.

```xml

https://my.sp/0MzT-aPAv;USER_CANCEL ```

StatusMessage innehåller ett ReferensID följt av något av följande fel.

ALREADY_IN_PROGRESS

CANCELLED

CERTIFICATE_ERR

EXPIRED_TRANSACTION

INVALID_PARAMETERS

START_FAILED

USER_CANCEL

UNKNOWN

4.5.1 DIGG tekniskt ramverk

Ifall det finns behov av att få cancel enligt DIGG tekniska ramverk så är det möjligt, dock kräver det att kör mot specifik IDP som har den inställningen.

```xml

https://m00-mg-local.testidp.funktionstjanster.se/samlv2/idp/metadata/0/24User pressed cancel

```

5.1 Certifikat för att verifiera XML-DSig

SP måste verifiera att signaturen på IdP:ns svar är korrekt (XML-C14N). För detta behövs CGI:s publika nyckel för IdP-tjänsten. Certifikatet återfinns i metadatat.

Varför finns detta här? Passar det bättre under annat avsnitt eller i FAQ? Är det relevant på en översikt kring SAML/IdP?

6 Tydlighet att inloggning sker på annan domän

Vi rekommenderar att varje SP på sina sidor förklarar att tjänsten säker inloggning sker från CGI och att URL på inloggningssidan kommer vara på funktionstjanster.se

Detta för att vara tydlig till användaren och undvika att användaren blir osäker.

Varför finns detta här? Passar det bättre under annat avsnitt eller i FAQ? Är det relevant på en översikt kring SAML/IdP?

7 Eget domännamn

Det är möjligt att använda eget domännamn på federationen om så önskas. Då ser era användare t.ex. http://m0x-mg-local.idp.myndighet.se istället för m0x-mg-local.idp.funktionstjanster.se i adressfältet. Kunden behöver delegera en subdomän till funktionstjänsters DNS för att detta ska fungera.

Varför finns detta här? Passar det bättre under annat avsnitt eller i FAQ? Är det relevant på en översikt kring SAML/IdP?

10 Övriga funktioner

Språkstöd

Det finns möjlighet att införa kundanpassade sidor på IdP:n med språkstöd. Vilket språk som skall visas styrs av vad som anges i requesten. Alla texter som sen skall visas behöver in i en språkfil alternativ hanteras via CSS med fördel för kundanpassade sidor. Detta är lite arbete att sätta upp, men skall man ha många olika språk är det bäst att göra rätt från början. Fördelen är att alla feltexter då också kommer på rätt språk. För att välja språk i anropet kan "?lang=en" eller "?lang=sv" läggas till på AssertionConsumerServiceUrl i AuthnRequest-anropet.

Det är även möjligt att använda sig av en ”flagga” på sidan som byter språket via länk.

```html /mg-local/setlanguage?lang=en

/mg-local/setlanguage?lang=sv ```

Länkar behöver uppdateras om länkar ska presenteras/exemplifieras.

10.2 Begär en autentiseringsmetod eller LOA-klass

10.2.1 Begär LOA-klass med AuthnContextClassRef

För att begära en specifik LOA-klass skicka med klassens uri i AuthnContextClassRef. För definition av LOA-klasser se DIGGs tekniska ramverk

LOA-klasser kan endast nyttjas via IdP som stödjer tekniskt ramverk, se metadata ovan.

För mer information kontakta funktionstjanster@cgi.com

Varför finns detta här? Passar det bättre under annat avsnitt eller i FAQ? Är det relevant på en översikt kring SAML/IdP? Ska det flyttas till tidigare avsnitt?

10.2.2 Begär autentiseringsmetod med local.methodid

Använd i första hand en IdP som enbart har en autentiseringsmetod.

En SP kan i requesten till IdP:n direkt ange vilken autentiseringsmetod som skall användas. Alternativt anropa en IDP som bara har en inloggningsmetod. Nedan beskrivs hur man skickar med metod i AuthnRequest-anropet. Om man listar inloggningsmetoderna i den egna Discovery-tjänsten minimeras det GUI som IdP:n visar till användaren.

I requesten så kan vi ta mot och tolka strängen local.methodid

IdP test har följande möjliga inloggningsmetoder:

  • BankID(på den här enheten) local.methodid.ccp10

  • Mobilt BankID (på annan enhet) local.methodid.ccp11

  • Telia (inloggning med Net iD) local.methodid.ccp8

  • övriga Steria, SignGuard (dubbelriktad ssl): local.methodid.ccp2

Exempel: Inloggning med BankID i test.

```xml

Kodblock
   <saml2:AuthnContextClassRef xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">urn:local.methodid.ccp10</saml2:AuthnContextClassRef>

```

IdP produktion har följande möjliga inloggningsmetoder:

  • BankID(på den här enheten): local.methodid.ccp10

  • Mobilt BankID(på annan enhet): local.methodid.ccp11

  • Telia e-legitimation: local.methodid.ccp8

  • Övriga Steria, SignGuard: local.methodid.ccp1

Varför finns detta här? Passar det bättre under annat avsnitt eller i FAQ? Är det relevant på en översikt kring SAML/IdP? Ska det flyttas till tidigare avsnitt?

10.4 Skicka med personnummer till inloggningsmetoden

Det är även möjligt att skicka med personnummer om man har valt att använda sig av BankID på annan enhet.

```xml https://my.sp/191212121212

```

Varför finns detta här? Passar det bättre under annat avsnitt eller i FAQ? Är det relevant på en översikt kring SAML/IdP? Ska det flyttas till tidigare avsnitt?

10.5 Information kring respektive certifikatsutgivare

Varför finns detta här? Passar det bättre under annat avsnitt eller i FAQ? Är det relevant på en översikt kring SAML/IdP? Ska det flyttas till tidigare avsnitt? Gäller hela 10.5 avsnittet.

...

tjänstelegitimationer som idag har en spridning i Sverige, utgivna av SITHS och Freja OrgID.

eID Verify har en IdP speciellt för e-tjänstelegitimationer, IdP företag. Se Metadata

5 Certifikat för att verifiera XML-DSig

SP måste verifiera att signaturen på IdP:ns svar är korrekt (XML-C14N). För detta behövs CGI:s publika nyckel för IdP-tjänsten. Certifikatet återfinns i metadatat.

6 Tydlighet att inloggning sker på annan domän

Vi rekommenderar att varje SP på sina sidor förklarar att tjänsten säker inloggning sker från CGI och att URL på inloggningssidan kommer vara under funktionstjanster.se

Detta för att vara tydlig till användaren och undvika att användaren blir osäker.

7 Eget domännamn

Det är möjligt att använda eget domännamn på federationen om så önskas. Då ser era användare t.ex. https://idp.myndighet.se istället för domän under funktionstjanster.se i adressfältet.

8 Övriga funktioner

8.1 Begär en autentiseringsmetod eller LOA-klass

8.1.1 Begär LOA-klass med AuthnContextClassRef

För att begära en specifik LOA-klass skicka med klassens uri i AuthnContextClassRef. För definition av LOA-klasser se DIGGs tekniska ramverk

För mer information kontakta funktionstjanster@cgi.com

8.1.2 Begär autentiseringsmetod med eid:names

Använd i första hand en IdP som enbart har en autentiseringsmetod

På vår Metadata sida finns fullständig information om vilken IdP som erbjuder vilken metod.

En SP kan i requesten till IdP:n direkt ange vilken autentiseringsmetod som skall användas. Alternativt anropa en IDP som bara har en inloggningsmetod. Nedan beskrivs hur man skickar med metod i AuthnRequest-anropet. Om man listar inloggningsmetoderna i den egna Discovery-tjänsten minimeras det GUI som IdP:n visar till användaren.

I requesten kan vi ta mot och tolka strängen eid:names

IdP test har följande vanliga inloggningsmetoder:

  • BankID eid:names:bankid

  • Freja eid:names:freja

Exempel: Inloggning med BankID i test.

```xml

Kodblock
   <saml2:AuthnContextClassRef xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">urn:eid:names:bankid</saml2:AuthnContextClassRef>

```

IdP produktion har följande vanliga inloggningsmetoder:

  • BankID eid:names:bankid

  • Freja eid:names:freja

8.3 Personnummer med BankID

Idag skall personnummer endast skickas med till BankID vid enstaka use-case gällande signering. Personnummer skall endast skickas då syftet är att låsa QR-koden så att den bara går att scanna med BankID app av personen som startat signering med rörlig QR kod. Detta för att säkerställa att samma individ som startade signeringen är den som avslutar.

8.4 Information kring respektive utfärdare

8.4.1 Telia

Vid inloggning med Telia så försöker den först verifiera att det finns en NetID installation, om den ej finner någon installation av NetID så kommer den försöka med dubbelsidig SSL. Dock måste användaren manuellt som det ser ut idag göra denna bekräftelse.

...

8.

...

4.2 BankID

BankID hanteras som BankID på samma enhet och BankID på annan enhet.

...

8.

...

4.2.1 BankID på samma enhet

Denna metod använder sig av BankID funktionen autostart.

...

8.

...

4.2.2 BankID på annan enhet

Denna metod kräver att personnumer matas in. Detta kan ske på SP sidan om så önskas. Personnummer måste även skickas med QR kod scannas. QR kod måste också användas vid signering om inloggning skett med BankID på annan enhet.

8.4.3 Freja eID

Freja eID hanteras som en metod som kan användas både på samma enhet med autostart eller på annan enhet med QR-kod

10.5.3 Mobilt BankID, BankID på kort, BankID på fil

Idag accepteras alla typer av BankID, det är dock möjligt att separera dessa om så önskas. Då blir det fler alternativ för användaren som visas på discoverytjänsten.

...

9 ipv4/ipv6

Vår IdP hanterar både ipv4 och ipv6. Om användaren har dualstack så är det operativsystemet som avgör vilket som kommer användas. Oftast är det ipv6.

...

10 Federering

  • Federering(SSO) är ej standard för nya tjänster. Det innebär att man måste beställa vilka man skall tillåtas federera med.

...

10.1 Tvingad autentisering eller kontroll av att användare fortfarande är inloggad (aktiv) i IdP:n

För en användare som loggat in med e-legitimation via IdP:n, så är den inloggningen giltig (aktiv) i 60 minuter såvida en SLO-request inte skickats. Detta innebär att användaren kan växla mellan olika e-tjänster och få SSO. (så kallad federering). Men ibland är detta inte önskvärt utan e-tjänsten kanske vill kräva en ny autentisering. Det kan också vara så att e-tjänsten vill kontrollera att användaren verkligen fortfarande är inloggad i IdP:n och att IdP:n inte mottagit någon SLO-request för användaren från annan SP eller att 60-minuters gränsen inte passerat. Dessa två funktioner går att använda och kombinera i SAML standarden med ForceAuthn och IsPassive.

...