+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: Benutzer nur zugriff auf spezielle Komponente gewähren

  1. #1
    Neu an Board
    Registriert seit
    04.01.2010
    Beiträge
    3
    Bedankte sich
    0
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard Benutzer nur zugriff auf spezielle Komponente gewähren

    Guten Abend Joomlaportal! : )

    ich bin ein relativer Joomla Neuling und hänge gerade an einem Problem fest.

    Ich habe soeben meine erste Komponente erstellt und nun möchte ich einen Benutzer erstellen, welcher wirklich nur diese eine Komponente verwalten kann und sonst nichts.

    Hat jemand einen Tipp für mich wie ich das am besten realisieren kann?
    Oder wie ich die Zugriffsrechte / Zugriffsebene eine Komponente einstellen kann?

    Vielen Dank und Grüße,
    Matthias
    Geändert von mfrosch (05.01.2010 um 10:40 Uhr)

  2. #2
    Kommt häufiger vorbei Avatar von SchusterHannes
    Registriert seit
    17.04.2006
    Ort
    Boppard
    Alter
    45
    Beiträge
    285
    Bedankte sich
    6
    Erhielt 48 Danksagungen
    in 48 Beiträgen

    Standard

    Guten Morgen,

    das ist im Moment noch der Schwachpunkt von Joomla 1.5 ... so einfach oder Standardmäßig lässt sich das gar nicht lösen.
    Gruß
    Schuster Hannes

    gulix-web4u.de

  3. #3
    Hat hier eine Zweitwohnung Avatar von Papillon
    Registriert seit
    07.05.2005
    Beiträge
    1.233
    Bedankte sich
    81
    Erhielt 284 Danksagungen
    in 200 Beiträgen

    Standard

    Hallo,

    wenn Du die Komponente selbst erstellt hast, ist das ja kein so großes Problem.
    Füge in der Konfiguration eine Auswahl der Benutzer ein und speichere die Auswahl (userids) in der Datenbank. Jetzt kannst Du in Deiner Komponente eine Abfrage einbauen, die die Anzeige, Konfiguration, ... der Komponente nur für die entsprechenden User gestattet.
    Sollte man allerdings aufpassen, dass man sich nicht selbst aussperrt. Der SuperAdmin sollte so oder so auf alles Zugriff haben.

    Gruß Papi
    Gelöste Threads bitte markieren: Anleitung | Joomla 2.5-Tutorial: Schulhomepage mit Joomla 2.5 erstellen | Winged Messenger: www.joomla-fortbildung.de

  4. #4
    War schon öfter hier
    Registriert seit
    23.09.2009
    Beiträge
    235
    Bedankte sich
    0
    Erhielt 62 Danksagungen
    in 59 Beiträgen

    Standard

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE install PUBLIC "-//Joomla! 1.5//DTD plugin 1.0//EN" "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
    <install version="1.5" type="plugin" group="system">
            <name>System - restrict</name>
            <author>Barnum</author>
            <authorUrl>http://www.domain.tld</authorUrl>
            <authorEmail>kontakt[at]domain.tld</authorEmail>
            <copyright>Copyright (C) 2010 - Barnum</copyright>
            <license>GNU General Public License, http://www.gnu.org/licenses/gpl-2.0.html</license>
            <creationDate>January 2010</creationDate>
            <version>1.0</version>
            <description>Plugin Description</description>
            <files>
                <filename plugin="restrict">restrict.php</filename>
            </files>
            <languages>
                <language tag="de-DE">de-DE.plg_system_restrict.ini</language>
                <language tag="en-GB">en-GB.plg_system_restrict.ini</language>
            </languages>
            <params>
                <param name="id" type="text" default="" label="User IDs" description="User Ids Description" />
                <param name="component" type="text" default="" label="Component" description="Name Of The Component" />
                <param name="show_message" type="radio" default="0" label="Show Info Message" description="Show Info Message Description">
                    <option value="0">No</option>
                    <option value="1">Yes</option>
                </param>
                <param name="message" type="text" default="" label="Info Message" description="Info Message Description" />
            </params>
    </install>
    PHP-Code:
    <?php
    defined
    '_JEXEC' ) or die( 'Restricted Access' );
    jimport'joomla.plugin.plugin' );
    class 
    plgSystemRestrict extends JPlugin {
        public function 
    onAfterRoute() {
            
    $application JFactory::getApplication();
            
    $option JRequest::getWord'option' );
            
    $user JFactory::getUser();
            
    $plugin JPluginHelper::getPlugin'system''restrict' );
            
    $pluginParams = new JParameter$plugin->params );
            
    $component $pluginParams->get'component' );
            
    $component trim$component );
            
    $show_message $pluginParams->get'show_message' );
            
    $message $pluginParams->get'message' );
            unset( 
    $plugin );
            if ( !
    $application->isAdmin() || $component == '' || $option == 'com_login' || $option == $component || $user->get'usertype' ) == 'Super Administrator' ) {
                  return 
    true;
            }
            
    $id $pluginParams->get'id' );
            unset( 
    $pluginParams );
            
    $tmp str_replace' '''$id );
            
    $list explode','$tmp );
            
    $users = Array();
            foreach ( 
    $list as $item ) {
                if ( 
    is_numeric$item ) ) {
                    
    $users[] = intval$item );
                } else {
                    continue;
                }
            }
            if ( 
    in_arrayintval$user->get'id' ) ), $users ) ) {
                
    $msg '';
                if ( 
    $show_message && $message ) {
                    
    $msg $message;
                }
                
    $application->redirect'index.php?option='.$component$msg );
            }
            unset( 
    $user );
            return 
    true;
        }
    }
    Plugin befindet sich im Anhang.
    Angehängte Dateien
    Geändert von Barnum (04.01.2010 um 18:15 Uhr)
    Tell 'em what they want to hear. That will keep them coming back for more. I 've got some for everyone.

  5. #5
    Neu an Board
    Registriert seit
    04.01.2010
    Beiträge
    3
    Bedankte sich
    0
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard Solved Gelöst

    Vielen Dank für eure Antworten!

    Ich habe es nun mittels dem Plugin gelöst.

    Allerdings hat mich bei dem Plugin gestört, dass "com_login" auch gesperrt war, dadurch konnte sich der Benutzer nicht abmelden.

    Ich habe das entsprechend gelöst.
    Zeile 36 in restrict.php mit den folgenden 4 Zeilen ersetzten.
    PHP-Code:
                if (!($_GET['option'] == 'com_login' && $_GET['task'] == 'logout'))
                {
                    
    $application->redirect'index.php?option='.$component$msg );
                } 
    Vielen Dank und Grüße,
    Matthias

  6. #6
    War schon öfter hier
    Registriert seit
    23.09.2009
    Beiträge
    235
    Bedankte sich
    0
    Erhielt 62 Danksagungen
    in 59 Beiträgen

    Standard

    Es hätte gereicht die erste Abfrage um 'com_login' zu erweitern.

    PHP-Code:
    if ( !$application->isAdmin() || $component == '' || $option == 'com_login' || $option == $component || $user->get'usertype' ) == 'Super Administrator' ) { 
        return 
    true

    Geänderte Datei befindet sich als Anhang im ersten Post.
    Tell 'em what they want to hear. That will keep them coming back for more. I 've got some for everyone.

  7. #7
    Abenteurer & Moderator Avatar von reservoir Dog
    Registriert seit
    09.09.2008
    Ort
    auf diesem Planeten
    Beiträge
    2.172
    Bedankte sich
    40
    Erhielt 325 Danksagungen
    in 280 Beiträgen

    Standard

    Hallo mfrosch,

    schön das dein Anliegen geklärt ist. Bitte diesen Thread noch entsprechend markieren.

    Gruß, reservoir Dog
    Gibt der Klügere immer nach,herrscht die Diktatur der Dummen. - Wo Unrecht zu Recht wird,wird Widerstand zur Pflicht. - Doch: Das Einzige das einen davon abhalten kann die Wahrheit zu finden,ist zu denken man kenne sie bereits.
    ERLEBE ABENTEUER e.V.

  8. #8
    Neu an Board
    Registriert seit
    04.01.2010
    Beiträge
    3
    Bedankte sich
    0
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    mhh, bin leider noch neu hier. Wir makiere ich den Thread den entsprechend? Gibt es dafür eine entsprechende Funktion? Oder soll lediglich ein "Solved/Gelöst" vor das Topic geschrieben werden?

  9. #9
    Moderator Avatar von Lacki
    Registriert seit
    27.04.2006
    Ort
    Direkt um die Ecke
    Beiträge
    8.739
    Bedankte sich
    337
    Erhielt 3.615 Danksagungen
    in 2.974 Beiträgen

    Standard

    Siehe hier (Aus dem Bereich Forenregeln)

  10. #10
    Neu an Board Avatar von schreckal
    Registriert seit
    13.02.2009
    Beiträge
    8
    Bedankte sich
    3
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Lächeln Frage!?

    Ein grosses Lob an die Leut die solch tollen Dinge immer wieder step by step umsetzen.
    Das Tool find ich klasse habe dies selbst in Verwendung... Danke nochmals.

    zu dem: taucht bei mir noch ne Frage auf !
    kann man dieses Tool so erweitern, das man auch meherer Komponenten zuweisen kann... also sprich nicht nur eine Komponente... `?

    gschreckal


    THX

+ Antworten
Seite 1 von 2 1 2 LetzteLetzte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein