Als beheerder van een systeem wilt u altijd een functie waarmee u bepaalde verantwoordelijkheden aan een groep vertrouwde gebruikers kunt delegeren. Het biedt u ook de mogelijkheid om workflows in te stellen waarmee u een site probleemloos kunt onderhouden en onnodige stress kunt voorkomen.
Vandaag zullen we zien welke bronnen beschikbaar zijn in OpenCart en hoe u bepaalde soorten machtigingen voor die bronnen aan een groep gebruikers kunt verlenen. We gaan door de back-end om de genoemde functies te verkennen en de gebruikersgroepen zullen het onderwerp van onze discussie zijn in het laatste deel van dit artikel..
Ik neem aan dat u de nieuwste versie van OpenCart gebruikt. We beginnen met een basisintroductie van bronnen en machtigingen.
In elk Access Control List (ACL) -systeem zijn er twee belangrijke entiteiten: machtigingen en bronnen. De bronnen worden met bepaalde machtigingen aan de groep gebruikers blootgesteld, zodat ze verschillende acties op de bronnen kunnen uitvoeren. Natuurlijk heeft elk systeem zijn eigen manier om de bronnen en machtigingen te organiseren.
In deze sectie zullen we dat onderzoeken in de context van OpenCart.
U zult verrast zijn te weten dat alle controllerbestanden aan de adminzijde als bronnen worden behandeld. Dus de bron "catalogus / attribuut" wijst naar het bestand op admin / controller / catalogus / attribute.php
. Wanneer u die specifieke resource aan een willekeurige gebruikersgroep toewijst, kunnen ze dus alle acties uitvoeren die zijn gedefinieerd in het bijbehorende controllerbestand..
Ga naar het back-end en navigeer naar Systeem> Gebruikers> Gebruikersgroepen. Bewerk een van de gebruikersgroepen - laten we een bewerken Beheerder groep, bijvoorbeeld.
Zoals u kunt zien, worden alle bronnen weergegeven in de vervolgkeuzelijst. Als u een nieuw controllerbestand maakt voor uw aangepaste module, wordt het uiteraard ook opgehaald.
Dus dat is een basisintroductie voor bronnen. In de volgende sectie zullen we zien hoe bronnen zijn gekoppeld aan machtigingen.
In OpenCart zijn machtigingen verdeeld in twee hoofdcategorieën: toegang en wijziging. Gebruikers met toegangsrechten kunnen alleen bronnen bekijken, terwijl de wijzigingsbevoegdheid gebruikers toestaat om broninformatie toe te voegen of te bewerken.
Dus dit was een korte introductie tot bronnen en toestemmingen. In de komende secties zullen we zien hoe ze moeten worden gebruikt in combinatie met gebruikersgroepen.
Omdat u nu bekend bent met machtigingen en bronnen, gaan we door met het maken van een nieuwe gebruikersgroep om te laten zien hoe het allemaal samenwerkt. Ga naar het back-end en navigeer naar Systeem> Gebruikers> Gebruikersgroepen. Er wordt een lijst weergegeven met de standaardgebruikersgroepen die beschikbaar zijn in OpenCart.
Klik op de + pictogram om een nieuwe gebruikersgroep toe te voegen.
Voer de naam van de gebruikersgroep in, selecteer bronnen voor elke toegangsrechten en wijzig deze en u bent klaar om te gaan. Red de groep als je klaar bent! Voor demonstratiedoeleinden heb ik alleen de catalogus / category bron voor mijn Aangepaste groep.
Laten we nu snel een nieuwe gebruiker maken vanaf de back-end en onze zojuist gemaakte gebruikersgroep toewijzen aan die gebruiker. Navigeren naar Systeem> Gebruikers> Gebruikers en klik op de + pictogram om een nieuwe gebruiker aan te maken.
Vul de vereiste gegevens in - het belangrijkste om hier op te merken is de Gebruikersgroep, waarvoor ik heb geselecteerd Aangepaste groep. Sla de gebruiker op, log uit en log in met deze nieuwe gebruiker. Probeer nu een sectie te openen die niet is toegestaan voor de Aangepaste groep gebruikersgroep. U krijgt een ongeldige toestemming voor toestemming!
In deze sectie zullen we zien hoe u kunt controleren of een gebruiker toegang heeft tot een bepaalde bron of deze kan wijzigen. In de meeste controllerbestanden in de back-end ziet u het volgende fragment, omdat het overduidelijk is dat we gebruikers moeten verifiëren voordat ze eventuele voorkeursacties kunnen uitvoeren.
Ga je gang en open de uploaden / admin / controller / catalogus / product.php
het dossier.
if (! $ this-> user-> hasPermission ('modify', 'catalog / product')) $ this-> error ['warning'] = $ this-> language-> get ('error_permission');
Er zijn meerdere plaatsen waar u het bovenstaande fragment kunt vinden. Kortom, het controleert of de aangemelde gebruiker over een machtiging voor de bron "catalogus / product" beschikt.
Intern controleert het de gebruikersgroep van de aangemelde gebruiker en verder als die bepaalde groep de machtiging voor de betreffende resource heeft.
Op deze manier kunt u controleren of de gebruiker specifieke acties voor bepaalde bronnen mag uitvoeren. Het ideale scenario zou zijn om verschillende gebruikersgroepen in te stellen en een andere reeks rechten toe te wijzen aan elke groep volgens uw vereisten.
Vandaag hebben we bronnen en rechten besproken in OpenCart. We zijn begonnen met een basisinleiding en later zagen we hoe u kunt profiteren van gebruikersgroepen wanneer deze effectief worden gebruikt in combinatie met middelen en machtigingen.
We concludeerden het artikel met een codefragment waarin werd aangetoond hoe te controleren of een gebruiker toegang heeft tot een bepaalde bron of deze kan wijzigen.
Zoals altijd, als u op zoek bent naar aanvullende OpenCart-hulpmiddelen, hulpprogramma's, uitbreidingen en dergelijke die u kunt gebruiken in uw eigen projecten of voor uw eigen opleiding, vergeet dan niet te zien wat we beschikbaar hebben op de markt.
Dus dat is het voor vandaag en vergeet niet om uw beoordelingen en vragen te delen met behulp van de commentaarfeed hieronder!