Scouterna / skojjt

Närvarorapportering för scouter
Apache License 2.0
14 stars 15 forks source link

[Feture request] ScoutID #94

Open fluffysfriends opened 4 years ago

fluffysfriends commented 4 years ago

Lägg till support för att logga in med scoutid (https://etjanster.scout.se/e-tjanster/scoutid/) och inte enbart Goggle konto

puggan commented 4 years ago

Låter bra, kan kolla på det när jag hunnit sätta mig in mer i ScoutID (om ingen annan hinner före).

puggan commented 4 years ago

Lagt till följande config i ScoutID.

$config->addSite(
    'skojjt.appspot.com',
    'https://skojjt.appspot.com/scoutid/asc',
    'https://skojjt.appspot.com/scoutid/sls',
);
$config->addSite(
    'narvaro.scout.se',
    'https://narvaro.scout.se/scoutid/asc',
    'https://narvaro.scout.se/scoutid/sls',
);
$config->addSite(
    'skojjt.test',
    'http://skojjt.test/scoutid/asc',
    'http://skojjt.test/scoutid/sls',
);

första parametern är entityId, ASC-url:n är för 'assertionConsumerService', Entry point efter en lyckad inloggning. SLS-url:n är för 'singleLogoutService', Entry point efter en lyckad utloggning.

La till samma config för 3 domäner, de 2 vi tänkt använda live: skojjt.appspot.com & narvaro.scout.se, samt en http variant med test TLD:n, som kan användas för lokal testning.

puggan commented 4 years ago

Påbörjad i; https://github.com/Scouterna/skojjt/blob/feature/scoutid/scoutid.py

puggan commented 4 years ago

Stuck on ImportError: dynamic module does not define init function (init_xmlsec)

from the line: import dm.xmlsec.binding as xmlsec in onelogin/saml2/utils.py

Stack ImportError: dynamic module does not define init function (init_xmlsec)

    at <module> (/base/data/home/apps/f~skojjt-puggan/20191130t153648.422819299929028050/lib/dm/xmlsec/binding/__init__.py:2)
    at <module> (/base/data/home/apps/f~skojjt-puggan/20191130t153648.422819299929028050/lib/onelogin/saml2/utils.py:33)
    at <module> (/base/data/home/apps/f~skojjt-puggan/20191130t153648.422819299929028050/lib/onelogin/saml2/metadata.py:17)
    at <module> (/base/data/home/apps/f~skojjt-puggan/20191130t153648.422819299929028050/lib/onelogin/saml2/settings.py:20)
    at <module> (/base/data/home/apps/f~skojjt-puggan/20191130t153648.422819299929028050/lib/onelogin/saml2/auth.py:18)
    at <module> (/base/data/home/apps/f~skojjt-puggan/20191130t153648.422819299929028050/scoutid.py:5)
    at <module> (/base/data/home/apps/f~skojjt-puggan/20191130t153648.422819299929028050/main.py:12)
puggan commented 4 years ago

both python-saml and pysaml2 seams to require xmlsec-binary

puggan commented 4 years ago

ScoutID har snart stöd för JWT-tokens, Kommer anändas på https://scoutid.se/admin .

Så med pyjwt eller likanande biliotek borde vi lätt kunna verifiera tokenen.