Kako ograničiti logovanje korisnika po uređaju Idi do glavnog sadržaja

Kako ograničiti logovanje korisnika po uređaju

Ako ste vlasnik web sajta koji nudi neku uslugu koja se plaća, onda će vam značiti da znate kako ograničiti logovanje korisnika po uređaju. Tu pre svega mislimo na usluge koje podrazumevaju da za njihovo korišćenje korisnik mora da se uloguje na vaš sajt. 

Recimo da ste vlasnik sajta koji nudi neku streaming uslugu. Da bi korisnik mogao da koristi vašu uslugu, mora da kreira nalog i da vam plati za korišćenje te usluge. 

To je sve u redu, do momenta kada taj korisnik podeli kredencijale za svoj nalog sa svojim drugarima i na taj način omogući da i korisnici bez naloga pristupe vašem sajtu i potpuno besplatno koriste usluge koje tamo nudite. 

To već nije u redu, jer na taj način ostajete bez potencijalne zarade koju biste ostvarili prodajom iste usluge tim drugim korisnicima. 

Rešenje za ovaj problem leži u ograničavanju logovanja korisnika po uređaju. 

Ograničavanjem logovanja po uređaju dozvoljavate korisniku sa nalogom da može da koristi samo jednu aktivnu sesiju na jednom uređaju. Na taj način sprečavate neautorizovani pristup i obeshrabrujete registrovane korisnike da dele svoje kredencijale drugim korisnicima.

U ovom tekstu ćemo objasniti na koji način možete ograničiti logovanje korisnika po uređaju. Predstavićemo vam nekoliko različitih tehnika, kako biste mogli da odaberete onu koja najviše odgovara vašem poslovnom modelu.

Ukoliko vas zanima više o tome na koji način da rešite probleme sa logovanjem, predlažemo da pročitate Kako rešiti probleme sa logovanjem na WordPress nalog.

Zbog čega je sve važno ograničiti logovanje korisnika po uređaju?

Osim već pomenutog razloga sprečavanja deljenja naloga između više korisnika, ograničavanje logovanja po korisniku je važno i iz drugih, ne manje važnih razloga:

  • Precizno merenje metrika: Metrike obezbeđuju da pratite šta i na koji način korisnici rade na vašem web sajtu. Alati poput Google Analytics i MonsterInsights pomažu da dođete do korisnih informacija o posetiocima vašeg sajta i otkrijete potencijalne probleme i prilike za unapređenje sadržaja i performansi.
  • Poboljšano korisničko iskustvo: Redukuje konflikte prilikom logovanja u slučajevima kada je aktivno više sesija. Na taj način obezbeđuje jednostavan pristup legitimnim korisnicima.
  • Usklađivanje sa pravilnikom o korišćenju: Pomaže korisnicima da izbegnu probleme koje mogu imati u slučaju da neko od neovlašćenih korisnika koristi platformu u suprotnosti sa pravilnikom o njenom korišćenju.
  • Upravljanje opterećenjem: Ograničava broj istovremenih konekcija koje dolaze sa jednog naloga i na taj način sprečava preopterećenje servera i poboljšava performanse i stabilnost web sajta.
  • Prevencija prevara: Blokira maliciozne pokušaje iskorišćavanja deljenih kredencijala, smanjujući na taj način rizik od prevare.
  • Bolja kontrola od strane admininstratora: Daje vam veću kontrolu nad ponašanjem i sesijama korisnika, omogućavajući na taj način bolju primenu politike korišćenja.

Kao što vidite, ograničavanje logovanja korisnika po uređaju ima velike prednosti, ali to ne znači da će sve navedene prednosti biti primenjive na vaš poslovni model. Svaki biznis je specifičan i jednom će biti važno onom što drugom možda neće. Zato ćemo u nastavku teksta pokazati kako ograničiti logovanje korisnika po uređaju i to na dva načina:

  • Putem Loggedin (Limit Active Logins Plugin) plugina 
  • Putem WPCode plugina

Kako ograničiti logovanje korisnika po uređaju pomoću Loggedin plugina?

Loggedin – Limit Active Logins plugin je pogodan za vlasnike sajtova koji traže besplatan i jednostavan način da automatizuju ograničavanje logovanja korisnika na jedan uređaj.

Ovaj plugin za ograničavanje logovanja dozvoljava da podesite makimalan broj aktivnih logovanja za svakog korisnika. Pored toga, on blokira svako novo logovanje u slučaju da je dostignut limit za logovanje, forsirajući sve ostale korisnike da se izloguju.

Korak 1: Instalirajte Loggedin

Kako smo već pomenuli Loggedin je besplatan plugin. Da biste ga instalirali dovoljno je da se ulogujete admin dashboard svog web sajta i idete na opciju All Plugins → Add New Plugin i u WordPress repozitorijumu plugina, u polju za pretragu, ukucate Loggedin i pritisnete Enter.

Kada se plugin prikaže u pretrazi, kliknite na Install, a nakon instalacije ga aktivirajte klikom na dugme Activate.

Korak 2: Podesite Loggedin

Nakon što ste instalirali i aktivirali plugin, idite na opciju Settings → General, a zatim skrolujte do opcije pod nazivom Loggedin Settings.

Prvo što ćete primetiti je da je podrazumevano podešeno da je maksimalan broj aktivnih logovanja jednog korisnika podešen na 3.

Možete da promenite ovaj broj onako kako vama odgovara. Nakon što ga promenite, svaki pokušaj logovanja iznad definisanog broja će biti automatski odbijen, čak iako su drugi browseri zatvoreni.

Da biste prilagodili dalje ovo podešavanje, idite na opciju Login Logic, gde ćete pronaći 2 opcije koje možete čekirati.

  • Allow omogućava plugin-u da prekine sve stare sesije, kako bi napravio prostor za novo logovanje, poštujući pritom podešeni maksimalni broj logovanja.
  • Block omogućava plugin-u da odbije svaki novi pokušaj logovanja, dok ne istekne postojeća sesija.

Pored toga, možete ručno kontrolisati korisnike koji su se ulogovali na vaš web sajt, koristeći opciju Force Logout da ih izlogujete. Ubacivanjem User ID-a možete da primorate korisnika da se izloguje sa svih uređaja. Ovo je odličan način da upravljanje pristupima korisnika.

Pošto WordPress koristi keširanje za regulisanje pokušaja prijavljivanja i praćenje sesija, ovaj plugin vam omogućava da postavite Cash Level.

Loggedin – Limit Active Logins plugin nudi 4 opcije nivoa keširanja koje možete izabrati:

  1. Normalno: Ovaj režim kešira podatke o sesijama na standardan način, balansirajući između performansi i pouzdanosti. Dobro funkcioniše za većinu sajtova koji nemaju napredne mehanizme keširanja.
  2. Samo statički resursi: Ograničava keširanje na statičke resurse kao što su JavaScript ili CSS, minimizirajući ometanje upravljanja dinamičkim sesijama prijavljivanja. Ovaj režim je koristan u okruženjima koja su osetljiva na dinamički sadržaj.
  3. Napredno: Optimizovani sistem keširanja koji se koristi za efikasnije upravljanje sesijama. Idealan je za sajtove sa velikim saobraćajem, jer omogućava plugin-u da komunicira sa složenijim slojevima keširanja, kao što je keširanje objekata.
  4. Isključeno: Potpuno isključuje keširanje za plugin, primoravajući ga da proverava bazu podataka ili skladištenje sesija direktno za svaki zahtev. Ovaj režim obezbeđuje precizno praćenje sesija, ali može da uspori performanse.

Kada ste završili kliknite na Save na dnu stranice, kako biste sačuvali podešavanja. Sada možete lako da ograničite logovanje korisnika po uređaju.

Kao što ste videli, ova metoda  je brza i jednostavna. Međutim, ima ograničene opcije prilagođavanja, što može smanjiti efikasnost kada su u pitanju veći timovi i korisničke baze.

Ako želite naprednije opcije prilagođavanja, preporučujemo drugu metodu.

Kako ograničiti logovanje korisnika po uređaju pomoću WPCode plugina?

Kao što smo već napomenuli, Loggedin – Limit Active Logins je jednostavan plugin koji omogućava ograničavanje svih korisnika da se prijavljuju istovremeno. Ali, šta ako želite da napravite neke izuzetke od ovog pravila?

Šta ako želite da sebi, članovima tima ili određenim korisnicima omogućite da zaobiđu ovo ograničenje prijavljivanja kako biste bolje upravljali vašim sajtom?

Ovo može da bude korisno ako je potrebno da više članova tima pristupi jednom nalogu. Na primer, možda želite da testirate funkcionalnosti ili rešavate neke greške, posebno u testnim ili razvojnim okruženjima.

Istovremeno, omogućavanje više korisnika da dele jedan nalog može vam pomoći da bolje upravljate resursima.

Iz tog razloga, preporučujemo WPCode plugin.

WPCode je bez sumnje jedan od najboljih WordPress plugina za upravljanje kod snippet-ima. Dolazi sa intuitivnim drag-and-drop interfejsom i velikom bibliotekom gotovih kodova, što vam omogućava da na svoj sajt ubacite kod bez potrebe za iskustvom u programiranju.

Ima funkcionalnost pod nazivom Smart Conditional Logic, koja omogućava vašem sajtu da učitava kod samo kada su ispunjeni određeni uslovi, poput prijavljenih korisnika, određenih URL-ova i slično.

Najvažnije je to što WPCode proverava svaki ručno dodat kod kako bi se osiguralo da savršeno funkcioniše i da ne izazove probleme na sajtu. Pošto ćemo ručno dodavati kod za zaobilaženje ograničenja prijavljivanja, ova funkcija je izuzetno korisna.

Ipak, imajte na umu da će vam ipak biti potrebno osnovno znanje rada sa kodom kako biste koristili ovu metodu.

Korak 1: Instalirajte WPCode

Iako WPCode nudi i premium verziju, čak i besplatna verzija omogućava dodavanje ovog koda. Da biste preuzeli WPCode Lite, otvorite repozitorijum plugina u svom admin dashboard-u i potražite ovaj plugin.

Kada instalirate i aktivirate plugin, idite na Code Snippets → Add Snippet.

Ovo će vas preusmeriti na biblioteku sa više od 130 unapred pripremljenih kodova. Ovde izaberite opciju Add Your Custom Code (New Snippet) da biste otvorili prozor za odabir tipa koda.

Korak 2: Ručno dodajte PHP kod

Zatim, u ovom prozoru izaberite opciju PHP Snippet kako biste otvorili interfejs za prevlačenje i ubacivanje koda.

Najpre unesite naslov koda kako biste ga lako prepoznali i ponovo koristili u drugim delovima svog sajta. Zatim, u WPCode editoru za kodove, nalepite sledeći kod:

function loggedin_bypass_users( $bypass, $user_id ) {
  
    // Ubacite ID korisnika za zaobilaženje
    $allowed_users = array( 1, 2, 3, 4, 5 );
  
    return in_array( $user_id, $allowed_users );
}
  
add_filter( 'loggedin_bypass', 'loggedin_bypass_users', 10, 2 );

Zatim idite na liniju koda koja počinje sa “$allowed_users = array”, i zamenite brojeve stvarnim ID-ovima korisnika kojima želite da omogućite zaobilaženje pravila za prijavljivanje.

Ne zaboravite da svaki ID korisnika odvojite zarezom, kao u prikazanom primeru sa brojevima.

Međutim, korišćenje specifičnih ID-ova korisnika može dovesti do dugačkog koda, posebno ako imate veliki tim. Kao rezultat toga, možete lako izazvati probleme na sajtu.

Da biste to izbegli, možete koristiti uloge umesto pojedinačnih ID-ova korisnika.

Za to, kopirajte i nalepite sledeći kod u WPCode code editor:

function loggedin_bypass_roles( $prevent, $user_id ) {
  
    // Niz uloga za zaobilaženje
    $allowed_roles = array( 'administrator', 'editor' );
  
    $user = get_user_by( 'id', $user_id );
  
    $roles = ! empty( $user->roles ) ? $user->roles : array();
  
    return ! empty( array_intersect( $roles, $whitelist ) );
}
  
add_filter( 'loggedin_bypass', 'loggedin_bypass_roles', 10, 2 );

Zatim, ponovo idite na liniju koda koja počinje sa “$allowed_roles = array”, gde ćete videti unapred postavljene uloge poput administrator i editor. Možete zameniti ovaj tekst odgovarajućim ulogama koje se primenjuju na vašem sajtu.

Ne zaboravite da svaku ulogu odvojite zarezom i stavite je u jednostruke navodnike.

Korak 3: Objavite kod

Kada završite, pomerite se ispod WPCode polja za unos koda i pronađite tab Insertion.

Ovde idite na opciju Insert Method, gde možete odabrati da ubacite kod pomoću opcija Auto Insert (automatskog ubacivanja) ili Shortcode. Zatim koristite padajući meni Location kako biste odredili gde na sajtu želite da se kod primeni.

Na kraju, idite na opciju Device Type i izaberite da li želite da se kod primenjuje na Any Device (bilo koji uređaj), Desktop Only (samo na desktop uređajima) ili Mobile Only (samo na mobilnim uređajima).

Kada budete zadovoljni svojim kodom za zaobilaženje ograničenja prijavljivanja, kliknite na dugme Save Snippet i koristite toogle dugme na vrhu stranice da biste aktivirali kod.

Ovim ste ujedno završili podešavanja. Sada možete ograničiti prijavljivanje na jedan uređaj i omogućiti određenim korisnicima da zaobiđu ovo pravilo. 

Zaključak

Ograničavanje logovanja korisnika po uređaju je važna strategija za zaštitu vašeg sajta, povećanje sigurnosti i unapređenje korisničkog iskustva. Ova praksa vam omogućava da sprečite neovlašćen pristup, smanjite rizik od prevare i osigurate poštovanje pravila korišćenja vaše platforme.

Takođe, omogućava vam bolju kontrolu nad ponašanjem korisnika i stabilnost performansi sajta, čak i pri povećanom opterećenju.

Kroz upotrebu alata poput Loggedin – Limit Active Logins i WPCode možete efikasno upravljati sesijama korisnika i prilagoditi pravila prema potrebama vašeg poslovanja. Svaka od ovih metoda ima svoje prednosti i omogućava jednostavno i pouzdano ograničavanje prijavljivanja po uređaju.

Na kraju, odabir pravog rešenja zavisi od specifičnosti vašeg sajta i poslovnog modela. Korišćenjem ovih alata, ne samo da štitite svoje resurse i prihode, već i obezbeđujete bolju uslugu za vaše legitimne korisnike.

Nenad Mihajlović


Ostavite odgovor