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:

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,

  • No labels