Sunet LMS
Globalt Canvas Community för utvecklare
https://community.canvaslms.com/groups/canvas-developers/pages/canvas-developers
Öppen källkod
Koden till Canvas är även öppen och publicerad på GitHub under AGPLv3 licens (en så kallad commercially dual-license) av Instructure, företaget bakom Canvas. Här hittar du koden: https://github.com/instructure/canvas-lms/wiki
Lägga till extra IdP:er i er egen Canvas instans
För att lägga till extra IdPer i er egen Canvas instans så finns det några saker som man måste göra. Det mesta ske i er Canvas instans.
1. Se till att er Canvas metadata är registrerad i SWAMID som en service provider.
Er Canvas metadata finns på https://example.instructure.com/saml2. Maila in denna till operations@swamid.se. Inkludera MDUI och ContactPerson information som ska läggas till i SWAMID samt ber om taggning med REFEDS Research and Scholarship. Du bör också kolla att de IdP som du ska lägga till har stöd för Research and Scholarship.
2. Under https://example.instructure.com/accounts/1/authentication_providers, lägg till en 'SAML IdP Discovery Service' från dropdown menyn 'Välj en verifieringstjänst'. URL ska vara https://md.nordu.net/role/idp.ds
3. En begränsning av Canvas SAML stöd är att man måste lägga till varje IdP som man vill tillåta för sig. Det finns tyvärr inget sätt för Canvas att konsumera en metadata fil med IdPer. Lägg till en IdP genom att välja 'SAML' från dropdown menyn och fylla i metadata URLn för IdPn i fältet 'IdP Metadata URI'.
För att lägga till en Shibboleth IdP, så är URL i format https://idp.example.se/idp/shibboleth. För en ADFS IdP är URL i format https://idp.example.se/federationmetadata/2007-06/federationmetadata.xml.
Klicka på spara. De andra fält - IdP-enhets-ID, Logga in URL samt Fingeravtryck för certifikat - bör nu fyllas i automatisk. Om inte, så kunde inte metadata läsas in. Antigen måste man rätta till URLn eller fylla i IDP-enhets-ID, Logga in URL och Fingeravtryck för certifikat manuellt.
5. Byta ut Inloggningsattribut till "eduPersonPrinicpalName". Spara.
6. Bestäm om du vill ha Just in Time-tillhandahållande eller inte (dvs. kontot skapas vid första inloggning eller kontot måste skapas manuellt med login id = ePPN av en Canvas administratör).
7. Om du vill hålla Canvas uppdaterat från IdPn, kan man mappa Federerade attribut. Ett förslag för mappning (Canvas-attribut -> Leverantörsatttribut) är
email -> mail
display_name -> displayName
given_name -> givenName
surname -> sn
name -> displayname
Glöm inte att spara igen!
8. Sedan kan man testa via https://example.instructure.com/login/saml_idp_discovery. Det finns en felsöknings option vid varje IdP konfiguration i Canvas då man kan bevaka en inloggning och ser vad som eventuellt går fel.