Taapeli / stk-upload

Base for stk server with data upload and browsing
GNU General Public License v2.0
3 stars 1 forks source link

Parannettu liittymisprosessi #59

Closed jpek-m closed 3 years ago

jpek-m commented 4 years ago
  1. Rekisteröityminen https://isotest.isotammi.net/register

    • luodaan käyttäjätunnus
    • lähetä vahvistuslinkki
  2. Vahvistus: käyttäjä klikkaa vahvistuslinkkiä (https://isotest.isotammi.net/join ilman user, email -tietoja)

    • K. täyttää liittymislomakkeen
    • sähköposti adminille
  3. Admin hyväksyy

    • K. saa asialliset oikeudet
    • sähköposti käyttäjälle
  4. K. kirjautuu normaalisti

A. Miten Flask-security sallisi sähköpostin muuttamisen myöhemmin, idea github Ehkä näin:

Tehtävät

kkujansuu commented 3 years ago

Olen nyt tehnyt tässä kuvatun muutoksen rekisteröitymiseen. Se ei vielä ole Githubissa - ajattelin että käydään se vielä yhdessä läpi. Tämä ei sisällä käyttäjän sähköpostiosoitteen vaihtamista.

Muutoksia:

Kirjautumattoman käyttäjän etusivulla oleva "Liity mukaan"-linkki johtaa nyt rekisteröitymissivulle /register, ei enää sivulle /join.

Kirjautumissivulta poistettu erillinen "Hae käyttäjäksi"-linkki (-> /join), nyt siellä on vain "Rekisteröidy".

Rekisteröitymissivulta poistettu teksti "Voit rekisteröityä vain jos olet saanut kutsun. Voit ilmoittautua halukkaaksi sivulla Liity Isotammeen."

Kun käyttäjä klikkaa rekisteröintinappia

Kun käyttäjä klikkaa vahvistuspostissa olevaa linkkiä, kirjautuu hän automaattisesti sisään ja joutuu automaattisesti sivulle /join, jossa häneltä kysytään tarkempia tietoja. Sivu on käyttäjän kielellä.

Tässä vaiheessa, kun käyttäjällä on vain rooli 'to_be_approved', käyttäjä voi siis kirjautua mutta voi mennä ainoastaan /join-sivulle, omalle profiilisivulleen (ja vaihtaa kieltä) tai sivulle, jolta voi lähettää sähköpostia adminille (paitsi jos sovelluksessa on sivuja, jotka ei vaadi mitään roolia - ja niitähän on, nämä reiät pitänee paikata!)

Ym. lomakkeen lähettämisestä lähtee adminille sähköposti, jossa on mukana linkki

'Approve user: https:///admin/update_user/'

joka vie adminin suoraan käyttäjän muokkaussivulle, jossa hän voi antaa tarvittavat oikeudet (roolit). Käyttäjän päivityssivua on muutettu niin että jos kyseessä on 'to_be_approved-käyttäjä', niin napin "Update user" sijasta onkin "Approve user", joka aiheuttaa sen että to-be-approved -rooli poistetaan.

Käyttäjän hyväksymisestä lähtee käyttäjälle automaattisesti sähköposti, jossa kerrotaan hyväksymisestä:

otsikko: Isotammen käyttäjätunnus hyväksytty
viesti:  Käyttäjätunnuksesi <tunnus> on nyt hyväksytty palveluun <http://host>

Tämän viestin sain menemään käyttäjän kielellä, vaikka ko. koodi tuntuu vähän kikkailulta (löytyi stackoverflowsta).

Käyttäjä voidaan hyväksyä myös "etukäteen", ennen kuin käyttäjä on vahvistanut rekisteröitymistään. Tällöin käyttäjä pääsee kirjautumaan heti vahvistuksen jälkeen eikä hänen tarvitse vastata /join-sivulla oleviin kysymyksiin!

Solmu 'Allowed_email' lienee tämän muutoksen jälkeen tarpeeton. Adminin sivut joilla käsitellään "Käyttäjäehdokkaita" (/list_all_users, /allowed_emails) on poistettu käyttöliittymästä. Sivu /list_users näyttää kaikki käyttäjät, myös ne jotka eivät ole vielä vahvistaneet rekisteröitymistään sekä ne joita ei ole vielä hyväksytty. Toimintoa, jolla käyttäjä voitaisiin poistaa ei ainakaan vielä ole.

kkujansuu commented 3 years ago

Vein nyt nämä muutokset kuitenkin master-haaraan Githubissa, commitit 52c7201b71aaabede7130e80539d78eb4cdae652, 00ca4f9f62fcb58b64342d6f13e95ab3b81bf8d1 ja 425301627139d27ece0a98353ef68cba9b820b56.

kkujansuu commented 3 years ago

Huom. Jotta uusi rekisteröitymisproseduuri toimii, pitää ensin lisätä tietokantaan noodi "to_be_approved"-roolia varten. Tämä olisi varmaan pitänyt tehdä automaattiseksi, mutta lisäsin sen tietokannan alustustoimiin. Admin-käyttäjä voi ne tehdä klikkaamalla "Virkistä"-linkkiä adminin etusivulla. Ks.kuva.

image

Juha42 commented 3 years ago

Kun testasin omassa kehtysympäristössä: 1) ensin admin-roolissa 'virkistä', 2) kirjaudun ulos, 3) uudestaan kirjautumissivulle 4) rekisteröidy (tunnuksella jt); tästä singahti sähköposti, jossa mukana vahvistuslinkki. 5) kurkkasin admin käyttäjänä ja näkyi käyttäjä jt, roolissa to_be_approved, mutta en tehnyt mitään (kirjauduin ulos) 6) klikkasin sähköpostin linkkiä, 7) päädyin sivulle joka kyselee tietoja, täyttelin niitä ja painoin lähetä. Tässä vaiheessa kai admin-käyttäjälle olisi pitänyt tulla sähköpostia; eipä tullut. config.py:ssä minulla on ADMIN_EMAIL_TO asetettu. 8) Kirjauduin admin roolilla ja löysin "approve user", ja annon samalla research-roolin uudelle käyttäjälle. Tästäkin kai olisi pitänyt tulla postia; eipä tullut. 9) Uusi käyttäjä pääsee kirjautumaan.

Juha42 commented 3 years ago

Korjaus: vaiheessa 7) täytetyn kyselylomakkeen palauttaminen lähettikin sähköpostia. Minulla vaan on filtteri, joka lajittelee jollain säännöillä saapuvaa posta eri arkistolaatikoihin, ja tämä ei ollut jäänyt inboxiin, vaan meni hiukan sivummalle. Vietissä on mukana linkki "Approve user: ", joka vie oikeaan paikkaan.

Vaiheen 8) sähköpostitkin lähtee, mutta menee minulla spammifiltterin toimesta roskiin, koska "osoitteita on väärennetty". Minulla From ja Reply To: stk.sukututkimusseura ja isotammi.tsto. Siis itseaiheutettu ongelma.

Summa summarum: toimii. Ja toimii loogisesti. Minun puolesta issuen saa sulkea.

kkujansuu commented 3 years ago

OK, kiitos testauksesta.

jorma-h commented 3 years ago

Moi!

Minullakin onnistui. "Uusi käyttäjä" sai confirm-sähköpostin, mutta ei saanut hyväksytty-postia. Samoin admin ei saanut mitään tietoa sähköpostitse.

Voi olla, että sähköposteissa on jotain viivettä.

Jorma

On 7.10.2020 15.13, Juha Takala wrote:

Korjaus: vaiheessa 7) täytetyn kyselylomakkeen palauttaminen lähettikin sähköpostia. Minulla vaan on filtteri, joka lajittelee jollain säännöillä saapuvaa posta eri arkistolaatikoihin, ja tämä ei ollut jäänyt inboxiin, vaan meni hiukan sivummalle. Vietissä on mukana linkki "Approve user: ", joka vie oikeaan paikkaan.

Vaiheen 8) sähköpostitkin lähtee, mutta menee minulla spammifiltterin toimesta roskiin, koska "osoitteita on väärennetty". Minulla From ja Reply To: stk.sukututkimusseura ja isotammi.tsto. Siis itseaiheutettu ongelma.

Summa summarum: toimii. Ja toimii loogisesti. Minun puolesta issuen saa sulkea.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Taapeli/stk-upload/issues/59#issuecomment-704893679, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACGKIC4XQ5XRPDS24FOVLGLSJRLOPANCNFSM4Q6L26BA.

jpek-m commented 3 years ago

Näyttöjen tekstit (nimet, linkit, kuvaukset) on tarkastettava ja yhdenmukaistettava @PeterJPower . Korjausehdotukset ensin dokumenttiin Asiakkaan rekisteröitymisprosessi 2020, minkä jälkeen muutokset ohjelmoidaan.

jpek-m commented 3 years ago

Näyttää valmistuneen 2020 aikana, @PeterJPower ja @jorma-h säätivät tekstejä.

jpek-m commented 3 years ago

Isotestissä rekisteröitymisen viimeinen vaihe antaa virheen, kun admin painaa sähköpostissa linkkiä Approve user: http://isotest.isotammi.net/admin/update_user/jpek-7.

2021-01-15 Liity Isotammeen  - 🌳Isotest

jpek-m commented 3 years ago

Toimii oikein, kun tarkennetaan työnkulkua: