Shibboleth SP för Sweden Connect
Sweden Connect är DIGGs SAML-federation för e-legitimation i Sverige. Där finns IdP:er för detta:
- Freja eID-inloggning
- BankID (via Sunet:s BankID-IdP)
- eIDAS
Sweden Connect har i princip identiska tekniska krav som SWAMID, och en SP kan ligga både i SWAMID och Sweden Connect med samma metadata.
Exempel på metadata som fungerar både i SWAMID och i Sweden Connect: https://metadata.swamid.se/?rawXML=846 (https://www.student.ladok.se/student-sp).
Börja med att följa SAML SP Best Current Practice för att installera, konfigurera och lägga in SP:n i SWAMID.
Ytterligare konfiguration för Sweden Connect
attribute-map.xml
Freja och BankID (finns redan i attribute-map.xml i SWAMID)
<!-- Finns redan i attribute-map.xml i SWAMID -->
<!--<Attribute name="urn:oid:1.2.752.29.4.13" id="personalIdentityNumber"/>-->
<!-- Swedish eID Framework -->
<Attribute name="urn:oid:1.3.6.1.5.5.7.9.1" id="dateOfBirth"/>
<!-- eIDAS -->
<Attribute name="urn:oid:2.5.4.6" id="c"/>
<Attribute name="urn:oid:1.2.752.201.3.4" id="prid"/>
<Attribute name="urn:oid:1.2.752.201.3.5" id="pridPersistence"/>
<Attribute name="urn:oid:1.2.752.201.3.7" id="eidasPersonIdentifier"/>
shibboleth2.xml
Signera alltid AuthnRequests.
Detta är ett krav i Sweden Connect. När ändringen är gjord i shibboleth2.xml behöver ny metadata genereras (med SPSSODescriptor AuthnRequestsSigned="true").
<ApplicationDefaults entityID="..."
...
signing="true">
Lägg till en till MetadataProvider
Låt SWAMID ligga kvar. Någon av dessa:
Feed | URL | Signeringscertifikat |
---|---|---|
Sweden Connect sandbox | http://eid.svelegtest.se/metadata/mdx/role/idp.xml | https://eid.svelegtest.se/mdreg/pub/metadata-cert.crt |
Sweden Connect QA | https://qa.md.swedenconnect.se/role/idp.xml | https://ladok3.its.umu.se/md/sweden-connect-qa.crt |
Sweden Connect Prod | https://md.swedenconnect.se/role/idp.xml | https://ladok3.its.umu.se/md/sweden-connect-prod.crt |
Metadata
Entitetskategorier
Alltid
http://id.elegnamnden.se/ec/1.0/eidas-naturalperson
http://id.elegnamnden.se/ec/1.0/loa3-pnr
http://id.elegnamnden.se/st/1.0/public-sector-sp
BankID (via Sunet)
http://id.swedenconnect.se/contract/Sunet/BankID-idp
Freja eID och eIDAS (via valfrihetssystem 2017)
http://id.swedenconnect.se/contract/sc/eid-choice-2017
Krav på att NameIDFormat finns definierat
<md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:persistent</md:NameIDFormat>
<md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</md:NameIDFormat>
xmlns:req-attr tillåts inte, kan ha kommit från PyFF
Plocka bort xmlns:req-attr="urn:oasis:names:tc:SAML:protcol:ext:req-attr"
ur <md:EntityDescriptor
(eller döp om till xmlns:reqattr
utan - om namespacet används i xml-filen).
Plocka bort EncyptionMethod för signing
Ibland har EncryptionMethod hamnat under KeyDescriptor med use="signing", plocka bort det i så fall. Det ska dock vara kvar för KeyDescriptor use="encryption" eller KeyDescriptor utan use.
Plocka bort allt SAML1-relaterat
- SPSSODescriptor: urn:oasis:names:tc:SAML:1.1:protocol
- SPSSODescriptor: urn:oasis:names:tc:SAML:1.0:protocol"
- AssertionConsumerService: urn:oasis:names:tc:SAML:1.0:profiles:browser-post
- AssertionConsumerService: urn:oasis:names:tc:SAML:1.0:profiles:artifact-01
Trigga inloggning via Sweden Connect
Kontrollera alltid att authnContextClassRef finns i Meta-Assurance-Certification och att den hamnar i Shib-AuthnContext efter inloggning, se 4.4 Implementera krav på tillitsnivå samt ev. multifaktor vid inloggning,
IdP | Miljö | authnContextClassRef | entityID |
---|---|---|---|
Freja (LoA3) | Prod | http://id.elegnamnden.se/loa/1.0/loa3 | https://idp-sweden-connect-valfr-2017.prod.frejaeid.com |
BankID (LoA3, via Sunet) | QA | http://id.swedenconnect.se/loa/1.0/uncertified-loa3 | https://bankidp.qa.swamid.se/bankid/idp |
BankID (LoA3, via Sunet) | Prod | http://id.swedenconnect.se/loa/1.0/uncertified-loa3 | https://bankid-idp.sunet.se/bankid/idp |
eIDAS (Substantial) | Sandbox | http://id.elegnamnden.se/loa/1.0/eidas-sub | https://dev.connector.swedenconnect.se/eidas |
eIDAS (Substantial) | Prod | http://id.elegnamnden.se/loa/1.0/eidas-sub | https://connector.eidas.swedenconnect.se/eidas |