Dit is het tweede artikel in een serie (hier is deel 1) waarin ik je wil uitleggen hoe je met een WordPress site gebruik kunt maken van de diverse IndieWeb plugins. Zoals het kunnen inloggen op andere sites met je eigen domeinnaam, reageren op andere sites met je eigen blog en nieuwe artikelen plaatsen met andere applicaties.
In dit artikel leer je hoe je met een WordPress plugin een identiteitsprovider maakt van je eigen site.
Wat is IndieAuth?
IndieAuth is een protocol wat verder bouwt op het bestaande authorisatie protocol Oauth 2.0. Voor dit artikel wil ik niet te diep in de achterliggende technologie duiken maar je uitleggen hoe jij het zelf kunt gebruiken op je WordPress site. Wil je meer weten over de exacte werking van Oauth en IndieAuth dan kan ik je het uitstekende artikel “OAuth for the Open Web” van Aaron Parecki aanbevelen, de architect van IndieAuth.
Wat IndieAuth doet doet is van je eigen site een zogenaamde identiteitsprovider maken. Een plek waarmee je kunt inloggen op andere sites. Je kunt dan gebruik maken van een webdienst zonder een nieuwe loginnaam en wachtwoord aan te maken of gebruik te moeten maken van een sociaal netwerk om in te loggen.
De dienst moet natuurlijk wel IndieAuth ondersteunen. Dat is op dit moment nog niet heel wijdverspreid, anders dan de diverse IndieWeb diensten die ik later zal bespreken.
IndieAuth maakt gebruik van bestaande webtechnologie en heeft een URL als identificatiemiddel. Dit maakt het breed bruikbaar op het web van vandaag en kan snel worden geïntegreerd in bestaande sites en platformen. Een voorbeeld kun je al vinden bij IndieLogin, inclusief uitleg hoe dit bij bestaande diensten kan worden ingebouwd.
Waarom is dit handig?
Je bent vast en zeker wel eens bij een andere site ingelogd met je Facebook account of je Twitter profiel. Wat je dan eigenlijk doet is jezelf afhankelijk maken van die derde partij om jouw inlog te regelen. Vaak zullen het diensten zijn die niet heel kritisch zijn voor je dagelijkse bestaan, maar toch, op elk moment kan een dienst besluiten om die inlogservice te stoppen, de voorwaarden eenzijdig te wijzigen of om meer van je persoonlijke data van het netwerk beschikbaar te stellen aan de eigenaar van de dienst.
Op de IndieWeb Wiki staat het fraai uitgelegd: “IndieAuth is part of taking back control of your online identity. Instead of logging in to websites as “you on Twitter” or “you on Facebook”, you should be able to log in as just “you”. ”
Tevens kan het zorgen voor het NASCAR-probleem. Net als bij de race-auto’s worden login pagina’s een kakofonie van logo’s. Niet alleen is het visueel onaantrekkelijk, het zorgt er voor dat je als gebruiker begint te twijfelen met welke dienst je oorspronkelijk was ingelogd.
Hoe installeer je de WordPress IndieAuth plugin?
Als je de IndieWeb plugin al hebt geïnstalleerd kun je met een klik de IndieAuth plugin installeren. In je WordPress beheer ga je naar IndieWeb > Extensions en installeer je IndieAuth. Natuurlijk kun je de plugin ook apart installeren via de WordPress Plugins schermen.
Wat stel je in?
Na installatie en activatie vind je onder het IndieWeb logo in je WP admin een nieuw onderdeel “IndieAuth”. Hier zie je de zogenaamde endpoints
genoemd. Dit zijn de plaatsen waar andere applicaties gaan kijken of jouw inlog klopt als je IndieAuth gebruikt en eventueel een extra authorisatie code krijgen om meer rechten te krijgen op je site. Je ziet dat dit endpoint op je eigen domein is.
Web Sign-in
De optie Web Sign-In is vooral interessant als je met meerdere auteurs een blog hebt en deze auteurs eveneens een eigen site hebben met IndieAuth. (Volg je het nog?) De auteur kan dan bij jou inloggen via een eigen domein in plaats van een login en wachtwoord combinatie. Hiervoor is het nodig dat in het profiel van de auteur de URL van de eigen site staat. Hierna kan je via de knop Web Sign-In in het loginvenster je eigen domein invullen, je gaat dan naar je eigen site om akkoord te geven en je bent ingelogd.
Het interessante is dat de andere auteur niet per se een WordPress site hoeft te hebben. Als je maar IndieAuth ondersteunt dan kun je via je eigen site inloggen. Zo heb je dus geen lock-in voor een bepaald CMS of platform.
De optie set user to represent site URL
is handig als je een site hebt met meer auteurs. Met deze optie geef je aan wie is ingelogd als je de URL van de site gebruikt. Als je met meerdere auteurs bent, kan elke auteur met zijn eigen auteurs-URL inloggen. In het geval van WordPress is dat https://url/author/auteursnaam. Op mijn testsite is het bijvoorbeeld https://frankmeeuwsen.xyz/author/frankmeeuwsen/
Hoe test je de plugin?
Net als in ons vorige artikel gaan we weer inloggen bij de IndieWeb Wiki. Deze stappen zijn allemaal hetzelfde. Op de IndieWeb wiki, klik op login rechtsboven.
Op de volgende pagina vul je wederom je eigen domeinnaam in. Maar je zult nu zien dat je niet naar Twitter gaat om je te identificeren. Je krijgt nu een scherm van je WordPress site die je vraagt of je inderdaad wilt inloggen. Klik op Authenticate en je gaat direct terug naar de wiki en bent ingelogd.
Andere voorbeelden van deze login zullen we zien bij de installatie en gebruik van Micropub apps, waarmee je op je eigen site kunt publiceren, en indiereaders, die het mogelijk maken om je RSS-abonnementen op je eigen domein te beheren en te gebruiken.
Mogelijke problemen
Er zijn gevallen bekend (met name bij Dreamhost) dat de IndieAuth plugin niet goed werkt omdat een specifiek deel van de communicatie tussen plugin en server wordt tegengehouden door de hostingprovider. Dit gaat om de Authorization header. Als je het idee hebt dat dit bij jou het geval is, dan zul je dit met je hostingprovider moeten oplossen. In de IndieWeb-WordPress chatkanalen zijn altijd mensen die je kunnen helpen om de juiste vraag te stellen voor je hostingprovider.
Hoe nu verder?
Zoals gezegd in het begin, er zijn nog niet veel diensten die IndieAuth ondersteunen. De diensten díe het ondersteunen, bieden vaak de mogelijkheid om ook iets op je site te publiceren. Dat gebeurt via het webprotocol Micropub. Daarom kan ik je aanraden om snel door te gaan met de installatie van een Micropub plugin en werkelijk te ervaren hoe identificatie als de “echte jij” je helpt om je eigen plek op het web mooier te maken.
Headerfoto: Jason Pofahl