Re: AW: AW: AW: [Mapbender-users] Berechtigungen für WFS-T setzen

Christoph Baudson christoph.baudson at wheregroup.com
Thu Feb 26 03:34:57 EST 2009


Hi Marcel

Marcel Waetke schrieb:
> Hallo Christoph,
> es funktioniert noch nicht ganz. Die mb_user_id wird bei der Digitalisierung
> wie erhofft automatisch in die Tabelle geschrieben, sofern ich die Variante
> mit doppelten Anführungszeichen, also $_SESSION["mb_user_id"], verwende.
> Leider funktioniert jetzt aber die Auswahl der erstellten Geometrien nicht
> mehr. Die Werkzeuge zum Selektieren sind also unbrauchbar geworden. Das gilt
> für den user der die Geometrie erstellt hat und für alle anderen, die
> versuchen darauf zuzugreifen.
>   

Man müsste prüfen, wie der Filter nun aussieht. Füge der Datei 
php/mod_wfs_result.php mal folgende Zeile hinzu:

$e = new mb_exception("FILTER: " . $filter);

und zwar in Zeile 85, nach der Zeile

$filter = checkAccessConstraint($filter, $db_wfs_conf_id);

Welchen Datentyp hat das FeatureType-Element, was Du belegen möchtest? 
Double funktioniert z.B. nicht, da er 1 zu 1.0 ändern würde.

Die Logs schreibt Mapbender in den Ordner log/. Bitte auf ausreichende 
Schreibrechte achten.

Du kannst dann ja mal die Anfrage direkt ausführen, z.B. am GeoServer, 
falls Du einen benutzt.

Gruß

Christoph


> Bei der Variante mit einfachen Anführungszeichen hat wiederum jeder user die
> Möglichkeit, auf die Geometrien zuzugreifen. Die mb_user_id wird bei der
> Digitalisierung bei mir nicht in die DB geschrieben.
>
> Es wäre super, wenn du mir noch einmal eine Hilfestellung geben könntest.
>
> Beste Grüße,
> Marcel
>
> -----Ursprüngliche Nachricht-----
> Von: mapbender_users-bounces at lists.osgeo.org
> [mailto:mapbender_users-bounces at lists.osgeo.org] Im Auftrag von Christoph
> Baudson
> Gesendet: Mittwoch, 25. Februar 2009 10:31
> An: Mapbender User List
> Betreff: Re: AW: AW: [Mapbender-users] Berechtigungen für WFS-T setzen
>
> Hallo Marcel,
>
> Marcel Waetke schrieb:
>   
>> Hi Christoph!
>> Ich habe mir den Patch von
>> http://trac.osgeo.org/mapbender/changeset/3580?format=zip&new=3580
>> heruntergeladen und die Dateien "mod_wfs_conf.php" und "mod_wfs_edit.php"
>> ersetzt. Nach dem Speichern von $_SESSION['mb_user_id'] in der Spalte
>>     
> "auth"
>   
>> wird der Eintrag zwar nun mehr nicht in $_SESSION[\ verändert, aber 
>> dafür ist das Abspeichern der Digitalisierung nicht mehr möglich. Der 
>> Button "Glühbirne" (save/update/delete) im Digitize-Tab wird nicht mehr
>>     
> angzeigt!
>   
>> Das Entfernen des Eintrags  $_SESSION['mb_user_id'] ermöglicht 
>> sogleich wieder das erfolgreiche Abspeichern, natürlich ohne die 
>> mb_user_id. Wo könnte der Fehler liegen?
>>   
>>     
>
> leider ist das ein weiterer Bug. Mit doppelten Anführungszeichen hätte es
> funktioniert.
>
> Hier ist ein Patch, so dass es für beide Varianten funktioniert. Das wird so
> in Mapbender 2.5.1 übernommen werden.
>
> In diesem Ticket [1] gibt es einen Link zu dem Changeset [2] im Mapbender
> 2.5 Branch, und dort ganz unten einen Download-Link ("Zip
> Archive") [3]. Dort sind alle geänderten Dateien drin (in diesem Fall
> lediglich eine).
>
> Ich konnte das Problem hier nachvollziehen und damit lösen. Sag bitte kurz
> Bescheid, ob es damit auch bei Dir funktioniert.
>
> Danke und Gruß
>
> Christoph
>
> [1] http://trac.osgeo.org/mapbender/ticket/388
> [2] http://trac.osgeo.org/mapbender/changeset/3589
> [3] http://trac.osgeo.org/mapbender/changeset/3589?format=zip&new=3589
>
>
>
> Danke
>   
>> Schöne Grüße,
>> Marcel
>>
>>
>>  
>>
>> -----Ursprüngliche Nachricht-----
>> Von: mapbender_users-bounces at lists.osgeo.org
>> [mailto:mapbender_users-bounces at lists.osgeo.org] Im Auftrag von 
>> Christoph Baudson
>> Gesendet: Donnerstag, 19. Februar 2009 16:14
>> An: Mapbender User List
>> Betreff: Re: AW: [Mapbender-users] Berechtigungen für WFS-T setzen
>>
>> Marcel Waetke schrieb:
>>   
>>     
>>> Hallo Christoph!
>>> Das wäre genau das, was ich suche. Leider klappt es mit der Umsetzung 
>>> noch nicht.
>>> Ich habe meine vorhandene Tabelle um die Spalte mb_user_id ergänzt 
>>> und in alle "auth"-Felder bei der WFS-T Konfiguration 
>>> $_SESSION['mb_user_id'] eingetragen. Dies hat aber keine Auswirkung 
>>> auf eine Zugriffsberechtiung erbracht, die Tabelle wird nicht 
>>> automatisch mit der ID ergänzt. Ein manuelles Setzen einer ID hat 
>>> auch keine Auswirkungen auf die Zugriffsrechte. Was mache ich falsch?
>>>   
>>>     
>>>       
>> Hallo Marcel,
>>
>> sobald Du die neue Spalte hinzugefügt hast, muss diese als 
>> Featuretype-Element Teil des WFS sein. Du musst also den WFS neu 
>> konfigurieren und danach in Mapbender hochladen. Falls das nicht 
>> gelingt, kann Dir vielleicht ein anderer dabei helfen, das ist nicht 
>> wirklich mein Gebiet.
>>
>> Nach dem Upload in Mapbender erstellst Du wie gehabt die WFS Conf.
>>
>> In dem WFS Conf Dialog siehst Du nun das neue Featuretype-Element als
>>     
> Zeile.
>   
>> In dieser Zeile trägst Du in der "auth"-Spalte die Variable ein, also 
>> $_SESSION['mb_user_id']. Nun trägt Mapbender in der Datenbankspalte, 
>> die diesem Featuretype-Element entspricht, die ID des aktuellen 
>> Nutzers ein, und prüft beim Auslesen wiederum die Zugriffsberechtigung.
>>
>> Gruß
>>
>> Christoph
>>
>>
>>
>>   
>>     
>>> Vielen Dank für die Hilfe,
>>> Marcel
>>>
>>> -----Ursprüngliche Nachricht-----
>>> Von: mapbender_users-bounces at lists.osgeo.org
>>> [mailto:mapbender_users-bounces at lists.osgeo.org] Im Auftrag von 
>>> Christoph Baudson
>>> Gesendet: Freitag, 13. Februar 2009 15:47
>>> An: Mapbender User List
>>> Betreff: Re: [Mapbender-users] Berechtigungen für WFS-T setzen
>>>
>>> Marcel Waetke schrieb:
>>>   
>>>     
>>>       
>>>> Hallo!
>>>> Ich habe einen WFS-T mit Punkten, Linien und Polygonen konfiguriert, 
>>>> den ich noch etwas anpassen möchte. Ich habe die user1, user2 und 
>>>> user3, die unterschiedliche Zugriffsmöglichkeiten auf die Geometrien
>>>>     
>>>>       
>>>>         
>>> erhalten sollen.
>>>   
>>>     
>>>       
>>>> So soll z.B. der user1 nur auf Polygone zugreifen können, während
>>>> user2 und
>>>> user3 Punkte und Linien ergänzen und verändern dürfen. Soweit ich in 
>>>> der Dokumentation lesen konnte, sind entsprechende Eintragungen im 
>>>> Feld
>>>>     
>>>>       
>>>>         
>>> "auth"
>>>   
>>>     
>>>       
>>>> bei der WFS Kofiguration vorzunehmen. Doch was genau ist hier 
>>>> einzutragen, um entsprechende Rechte an die user zu vergeben?
>>>>   
>>>>     
>>>>       
>>>>         
>>> Dort muss eine Variable eingetragen werden, z.B. 
>>> $_SESSION['mb_user_id']
>>>
>>> Beim Speichern einer Geometrie wird der Wert dieser Variable in das 
>>> Feld
>>>     
>>>       
>> des
>>   
>>     
>>> entsprechenden Featuretypes eingetragen. Beim Abfragen einer 
>>> Geometrie
>>>     
>>>       
>> wird
>>   
>>     
>>> ebenso geprüft, ob der Wert in der Datenbank mit dem aktuellen Wert 
>>> der Variable übereinstimmt.
>>>
>>> Kurz: Ein Benutzer dürfte dann nur die Geometrien abfragen, die er 
>>> auch eingetragen hat.
>>>
>>> Achtung: Für schon existierende Geometrien müsste die Datenbank dann
>>>     
>>>       
>> manuell
>>   
>>     
>>> befüllt werden, um die Zugangsberechtigung zu setzen! Sonst könnten 
>>> Geometrien unter Umständen nicht mehr in Mapbender abgefragt werden.
>>>
>>> Man könnte zudem vielleicht eine Variable wählen, die eine Gruppe und
>>>     
>>>       
>> nicht
>>   
>>     
>>> nur einen einzelnen Benutzer identifiziert.
>>>
>>> Christoph
>>>
>>>   
>>>     
>>>       
>>>> Schöne Grüße,
>>>> Marcel
>>>>
>>>> _______________________________________________
>>>> Mapbender_users mailing list
>>>> Mapbender_users at lists.osgeo.org
>>>> http://lists.osgeo.org/mailman/listinfo/mapbender_users
>>>>   
>>>>     
>>>>       
>>>>         
>>>   
>>>     
>>>       
>>   
>>     
>
>
>   


-- 

----------------------------------

 FOSSGIS Konferenz 2009
 17.-19. März 2009 in Hannover
 http://www.fossgis.de/konferenz

---------------------------------- 

_______________________________________

W h e r e G r o u p GmbH & Co. KG

Siemensstraße 8
53121 Bonn
Germany

Christoph Baudson
Anwendungsentwickler

Fon: +49 (0)228 / 90 90 38 - 15
Fax: +49 (0)228 / 90 90 38 - 11
christoph.baudson at wheregroup.com
www.wheregroup.com
Amtsgericht Bonn, HRA 6788
_______________________________________

Komplementärin:
WhereGroup Verwaltungs GmbH
vertreten durch:
Olaf Knopp, Peter Stamm
_______________________________________



More information about the Mapbender_users mailing list