Drupal 6 -HST-autentikaation parantaminen

Sunnuntaina kirjoitin Drupal 6 -autentikoinnista HST-kortilla. Kirjoituksessa väitin myös aikovani laajentaa Certificate Login -modulia mahdollistamaan OpenID-tyylisen ratkaisun, jossa käyttäjän nimeä ei tarvitse olla saatavissa suoraan varmenteesta vaan käyttäjä voidaan liittää mielivaltaiseen määrään eri varmenteita. Tämä on Drupal 6:ssa mahdollista authmap-taulun avulla, jota Drupalin oma OpenID-modulikin käyttää. Käytin viime yöstä muutaman tunnin asian tutkimiseen ja sain aikaiseksi toimivan laajennuksen moduliin, jonka suurin jäljellä oleva puute on se, ettei käyttäjä voi tarkastella itseensä liitettyjä varmenteita eikä poistaa niitä. Lisään tuon ominaisuuden, mikäli patchini hyväksytään osaksi modulia. Tässä kuitenkin ohje ominaisuuden omatoimiseen käyttöön ottamiseen.

Koodimuutokset

Ensimmäiseksi ominaisuutta hyödyntääkseen tulee patchia käyttäen toteuttaa koodimuutokset koodiin. Suosittelen hakemaan Drupal.orgin versionhallinnasta ohjeen mukaisesti uusimman version koodista, koska patch on tehty sitä vasten: $ git clone http://git.drupal.org/project/certificatelogin.git $ cd certificatelogin Tämän jälkeen käy lataamassa patch issuesta. Siirrä ladattu patch certificatelogin-hakemistoon, jonka Git juuri loi. Siirry hakemistoon, ja aja seuraava komento: $ patch -p0 < certificatelogin-authmap.patch patching file certificatelogin.module Jos tulosteena tuli jotain muuta kuin yllä mainittu (erityisesti jos tulosteessa lukee FAILED), patch epäonnistui. Tällöin ei kannata jatkaa ennen ongelman korjaamista. Siirrä vielä moduli Drupal-asennukseesi sopivaan hakemistoon (esim. sites/default/modules/custom).

Asetukset

Kun olet siirtänyt modulin asennukseesi ja laittanut sen päälle, käy vielä modulin asetussivulla (admin/settings/certificatelogin). Jos olet aiemmin käyttänyt modulia, huomaat yhden uuden valinnan: ”Use authmap instead of user name.” Klikkaa se päälle. Tämän jälkeen mene kirjautuneena käyttäjän osoitteeseen /login ja klikkaa Login-painiketta. Jos kaikki meni kuten kuuluu, ruudullasi lukee nyt ”Successfully added” ja perässä varmenteesi tunniste. Nyt varmennekirjautuminen toimii ilman, että käyttäjätunnuksen tarvitsee olla varmennetunnus. Voit liittää edellämainitulla tavalla käyttäjätunnukseen useammankin varmenteen. Varmenteita voi tällä hetkellä poistaa ainoastaan suoraan tietokannasta authmap-taulusta. That's it, have fun!

Tags: 

Lisää uusi kommentti

Filtered HTML

  • Sallitut HTML-tagit: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd> <h2> <h3> <h4> <h5> <h6> <h7> <p> <img> <table> <tr> <th> <td> <br> <pre> <abbr>

Plain text

  • HTML-merkintää ei sallita.
  • Www-osoitteet ja email-osoitteet muutetaan automaattisesti linkeiksi.
  • Rivit ja kappaleet päätetään automaattisesti.