Ahogy nő a WordPress népszerűsége, egyre gyakrabban kérdezik tőlem, hogy hogyan lehet jelszóval levédeni ezt-azt: egyes oldalakat, esetleg egyben az egészet, vagy bizonyos kiegészítő alkalmazásokat, pl. egy fórumot.
A védelemnek természetesen rengeteg útja-módja lehet, de a kérdés mögött nyilvánvalóan az is ott van, hogy minél egyszerűbben. Mert programozással bármit és bárhogyan meg lehet ugyan oldani, de ez bonyolult, drága és időigényes, úgyhogy normális ember fejében meg sem fordul.
Ebben az írásban röviden áttekintek néhány egyszerűbb módszert. Előre kell azonban bocsátanom, hogy az ilyesfajta védelem általában nem 100 %-os – de ettől még nyugodtan alkalmazható. A fajsúlyosabb védelem a biztonságos kapcsolatnál kezdődik (https).
A teljes WP mappa külső védelme
Elsőnek itt van mindjárt a .htaccess fájl. (Ez nem névkiterjesztés; tényleg így hívják, tehát a neve ponttal kezdődik.) Ezzel sok bűvös dolgot lehet művelni, jóllehet általában ez is kívül esik a normál felhasználó érdeklődési körén. Nem feltétlenül kell azonban leckéket venni a .htaccess rejtelmeiből, mert pl. a mappák jelszavas védelme simán megoldható a közismertebb kezelőfelülettel megáldott tárhelyek (mint pl. cPanel, Plesk) admin felületéről is.
Ezt az opciót a Biztonság szekcióban lehet megtalálni Web védelem, Mappák jelszavas védelme vagy hasonló név alatt. A teendő mindössze annyi, hogy a megjelenített mappalistában a kívánt helyre kell navigálni (egy mappa ikonjára kattintva annak tartalma válik láthatóvá), és amikor már látod a védendő mappát, akkor nem az ikonjára, hanem a nevére kell kattintani.
A párbeszédablak két részből áll: az egyiken ki-be kapcsolhatod a mappa védelmét, a másikon pedig felhasználókat rendelhetsz a védendő mappához, természetesen jelszóval együtt.
Ezzel a módszerrel csak a teljes WP telepítési mappát (pl. public_html) tudod védeni, azon belül szelektíven semmilyen tartalmat nem. Sőt, ha egy olyan tárhelyen próbálod meg alkalmazni egy teljesen független mappára, ahol WP is működik, a mappát böngészőből megcélozva a látogató a jelszó bekérése helyett nagy valószínűséggel sima 404-es hibát fog kapni (az oldal nem található). Ezt ki lehet ugyan kerülni, de ez kívül esik jelenlegi témánkon.
A védelem nem a WP szintjén, hanem az Apache webszerver szintjén történik. Ha a teljes WP-t véded, akkor elegendő egyetlen felhasználót ill. jelszót hozzárendelned, mert ezzel is kb. ugyanazt éred el, mintha mindenkinek külön user-nevet és jelszót adnál. Sokkal egyszerűbb lesz viszont közzétenni az engedélyezett kör számára.
Azt is megteheted, hogy a jelszót időnként megváltoztatod. Ezzel elejét veheted az esetleg továbbpasszolt jelszóból eredő illetéktelen hozzáférések elburjánzásának.
Fontos megértened, hogy a WP-hez így nem a WP-ben regisztrált felhasználók fognak hozzáférni, hanem azok, akiknek a user-nevet és jelszót megadtad. A kettő egymástól teljesen független.
Az összes bejegyzésés és oldal védelme
Az alábbiakban vázolt védelem bővítménnyel van megoldva, és a képekre valamint a CSS stíluslapokra nem vonatkozik. Ilyesmire példa lehet a Registered only plugin, amely a cikk írásakor innen tölthető le. A plugin bekapcsolása után a WP fentebb említett tartalma csak a regisztrált látogatóid számára lesz elérhető.
Telepítése a szokásos. Először is fel kell tölteni a bővítmények mappájába (ez általában a wp-content/plugins/ nevű mappa). Utána győződj meg róla, hogy a tagságnál NEM a bárki regisztrálhat opció van kiválasztva a Beállítások / Általános oldalon. Végül pedig kapcsold be a plugint.
Ez a bővítmény nem védi viszont a hírcsatornákat (RSS feeds). Ha a védelmet erre is ki akarod terjeszteni (mert enélkül nem sok értelme lenne a védelemnek), akkor tehát ezt vagy külön le kell tiltanod, vagy egyszerűen törölnöd kell a kapcsolódó fájlokat. Ezek a fájlok a wp-atom.php, wp-commentsrss2.php, wp-rdf.php, wp-rss2.php, wp-rss.php és a wp-feed.php.
A plugin nem alkalmas arra, hogy vele csak bizonyos kategóriákat, bejegyzéseket vagy oldalakat védjél.
Működéséről úgy tudsz meggyőződni, ha kijelentkezel az admin felületről, és megpróbálod elérni a blogodat stb. Ha pedig bejelentkezel (akár adminként, akár normál látogatóként), akkor a teljes tartalmat el kell tudnod érni.
Hasonló funkciója van az Authenticator nevű bővítménynek is. Működése egyszerű, csak fel kell tölteni, és aktiválni.
Ezek a védelmek a WP szintjén működnek.
Felhasználói szintekhez kötött védelem
A Post-Levels nevű plugin segítségével egy számmal megadott szintet tudsz hozzárendelni minden egyes felhasználódhoz, majd pedig olyan bejegyzéseket hozhatsz létre, amelyek csak egy adott szintű és afölötti felhasználók számára válnak láthatóvá. Nagy számú felhasználó esetén érzésem szerint ez egy kissé macerás lehet; ha valaki veszi a fáradságot, és kipróbálja, esetleg referálhat róla.
Telepítése a szokásos. Nincs megbízható adatom róla, hogy a 3.0-val is működik-e.
Bejegyzések és oldalak jelszavas védelme
Ez a védelem bele van építve a WP-be, tehát nem igényel külön bővítményt. A szerkesztőablak mellett (jobbra) található a Nyilvánosság beállítása, amelyet kinyitva ki kell választanod a Jelszóval védett opciót, majd meg kell adnod a jelszót.
A védelem egyaránt beállítható bejegyzésekre és statikus oldalakra is. Nem tévesztendő össze a Magánjellegű (Private) opcióval, mert az egészen másra szolgál.
A Legyen folyamatosan a kezdőoldalon választással nyilván csak akkor lehet élni, ha a bejegyzés nyilvános, tehát nincs rajta jelszavas védelem.
A jelszót aztán el kell juttatnod azoknak, akiknek engedélyezni kívánod az oldal megtekintését. Mivel ezt valószínűleg sima (nem titkosított) emailében teszed, ez nyilván korlátozza a védelem biztonságát, de az esetek többségénél ez a védelmi szint is tökéletesen megfelelő.
Ez a védelem is független attól, hogy a látogató regisztrált felhasználó-e vagy sem.
Privát bejegyzések
Egy bejegyzést ugyanott nyilváníthatsz magánjellegűnek, ahol a jelszavas védelmet is be tudod állítani. A kettő között az az alapvető különbség, hogy a privát oldalakhoz nem kell jelszó, és azt csak a szerkesztők és adminisztrátorok láthatják. Lehetnek olyan esetek, amikor egy blogot többen szerkesztenek, vagy amelyeknek több adminisztrátora van, és ezek pl. egy csapatmunkában készülő tartalom esetén így (is) kommunikálhatnak egymással.
Ha csak egyetlen adminisztrátor van, aki egyszemélyben a szerző is, akkor is jó szolgálatot tehet egy ilyen privát oldal, pl. azért, mert az admin bárhonnan elolvashatja és írhatja. Használható naplózásra stb.
Lehet persze mondani, hogy ezt másképp is meg lehet oldani. Bizonyára. De ha már van, akkor egyszerűbb és néha célirányosabb is ezt használni. És a privát oldalnak megvan az az előnye, hogy ha valakinek sikerül is kitalálnia az oldal címét, akkor sem láthatja – mert még az admin is csak bejelentkezés után fér hozzá.
Arra persze ügyelni kell, hogy ha több admin van, akkor a privát oldalt bármelyikük átminősítheti nyilvánossá. Akár véletlenül is.
Vagy (hátha később fontos lesz alapon) egy privát bejegyzéshez minden nap hozzáfűzhetem, hogy aznap mi lényeges történt, mit csináltam, hol voltam stb., tehát személyes naplófájlnak is használom. Aki vezet valami munkanapló-félét, az tudja, hogy ennek mi a haszna.
Egyéb kiegészítők
Titkos URL jelszavas oldalakhoz (token)
Ez egy variáció a jelszóval védett oldalakhoz, amikor a bejelentkezéshez mégsem kell jelszó. A védelem abban nyilvánul meg, hogy a hozzáférés egy “titkos” webcím révén valósul meg. Az értelme annyi, hogy a jogosultaknak nem kell bejelentkezéssel bíbelődniük, elég csupán a titkos URL-t tudni. Továbbá: az oldalt a keresők sem fogják megtalálni.
Az URL képzését ill. a belépés kezelését a Post Password Token nevű plugin végzi.
Aloldalak védelme
Ha az ember a statikus oldalait hierarchikus rendbe szervezi, és egy főoldalt jelszóval véd, akkor ösztönösen úgy gondolhatja, hogy ezzel a védett oldal gyermekei, unokái stb. is automatikusan megöröklik ugyanazt a védelmet.
Nos, ez esetben az ösztönök csalnak. Ha viszont ragaszkodsz ehhez a megoldáshoz, akkor mi sem egyszerűbb ennél: töltsd fel és aktiváld az FT Password Protect Children Pages nevű bővítményt.
Ez egyetlen dolgot csinál: megoldja egy jelszóval védett oldal leszármazottjainak védelmét, természetesen ugyanazzal a jelszóval. Ha valaki a főoldalnál (vagy annak egy aloldalánál) megadta a jelszót, akkor a teljes hierarchiához szabaddá válik az út, függetlenül a családfában elfoglalt szinttől.
Az összes bejegyzés védelme egyetlen jelszóval
Az is megoldható, hogy a jelszavakat ne kelljen külön-külön minden bejegyzésnél megadni, hanem egyetlen közös jelszó legyen valamennyi bejegyzésre.
Az ehhez szükséges plugin neve: Password Protect All Posts.
Csak a bejegyzéseket védi, az oldalakat nem. És nemcsak azoknak a bejegyzéseknek ad új jelszót, amelyeket korábban esetleg már egyenként levédtél (az összes korábban beállított jelszót felülírva), hanem az összes létező bejegyzésnek. Sőt nemcsak a beállítás pillanatában létezőknek, hanem azoknak is, amiket csak később hozol létre. Kibúvó pedig nincs, ne is próbálkozz: hiába állítod be egy bejegyzésnél, hogy legyen nyilvános – akár a kéménybe írtad volna fel korommal.
Közös jelszó az összes védett bejegyzéshez
Ha az előző plugin ügybuzgalmát túlzónak találod, akkor számodra valószínűleg a Global Post Password plugin lesz a barátságosabb választás.
Ez esetben a forgatókönyv úgy néz ki, hogy nem akarsz minden bejegyzést jelszóval védeni, de amelyiket igen, azt szeretnéd ugyanazzal a jelszóval, méghozzá úgy, hogy egy esetleges jelszóváltás ne igényelje 2458 bejegyzés mindegyikénél ugyanazt az unalmas manuális műveletet.
Ja, igen: nevével ellentétben a plugin hatásköre nemcsak a bejegyzésekre terjed ki, hanem a statikus oldalakra is – amennyiben ezekre is beállítottad a jelszavas védelmet
Ezzel a bővítménnyel a Beállítások/Adatvédelem oldalon egy globális jelszót tudsz definiálni a védett bejegyzésekhez (ill. oldalakhoz). Azok írásakor így nincs szükség a jelszó megadására: mindegyiknél egyetlen kattintással be és ki tudod kapcsolni a jelszavas védelmet. A globális jelszó módosításakor az összes védett bejegyzés és oldal azonnal megörökli azt.
Azt is megteheted, hogy nemcsak egyetlen, hanem akárhány globális jelszót is megadhatsz. Ezek bármelyike egyaránt betölti majd a hozzáférési kulcs szerepét. Hogy akkor mire jó mindez? Ily módon pl. ideiglenes jelszavakat hozhatsz létre, amelyeket esetleg csak egy kisebb csoporttal közölsz, és azokat a teljes védelem érintése nélkül bármikor törölheted.
A fő jelszót viszont nem lehet úgy törölni, hogy üreset adsz meg helyette. Ennek egyedüli módja a plugin kikapcsolása vagy törlése.
Az elfelejtett jelszót a beállítási oldalon meg tudod nézni. A plugin kikapcsolásával automatikusan visszatérsz a bejegyzésenkénti jelszókezeléshez, indulásként a legutoljára használt globális jelszóval.
További hasznos lehetőség a jelszavaknak az URL-ekben való engedélyezése. Ezt külön be lehet állítani a közvetlen linkekre (permalinkek) ill. az RSS hírcsatornákra (feed URL-ek). Ily módon olyan speciális linkeket is tudsz képezni, amelyek magát a jelszót is tartalmazzák, így a link birtokosa mentesül a jelszó beírása alól. A jelszót a szokott módon kell az URL végéhez ragasztani, pl.: www.mydomain.hu/oldalcime?pass=jelszó.
Ezt a lehetőséget természetesen nem célszerű nyakló nélkül felajánlani mindenkinek, mert akkor az egész védelem súlyát és egyben értelmét veszti.
Még egyszer hangsúlyozom, hogy a globális jelszó beállítása nem jelenti a védelem kiterjesztését az összes bejegyzésre (és oldalra), ellentétben azzal, ami az előző plugin működését jellemezte.
Tagi oldalak kezelése bővítményekkel
Az előzőekben vázolt módszerek sok esetben jó szolgálatot tehetnek. Ha azonban tovább szeretnél nyújtózkodni, akkor hamar ki fog derülni, hogy ezek alól bizony elég hamar kilóg a lábad. Ez pedig nem mindig kellemes.
Az úgynevezett tagi oldalak általában rugalmasabb és árnyaltabb megoldást nyújtanak erre a problémára, cserébe persze a beállításuk és kezelésük is macerásabb lehet. Nagyobb súllyal esik latba továbbá a honosítás kérdése is, ami a szövegek lefordításán túlmenően olykor karakterkészlet-kezelési anomáliákba is ütközhet.
Hacsak addig mást nem gondolok, legközelebb sort kerítek egy (vagy két) ilyen megoldásnak a megszelídítésére és ismertetésére is.
Ha a témával kapcsolatban közhasznú kérdésed, megjegyzésed, satöbbid van, ne fukarkodj a hozzászólással!

