Domain modul, userek

gazsesz képe

Folyik a domain modul tesztelése ezerrel és újabb kérdés merült föl:
Az egyik aloldalhoz létrehozott editori jogosultságú juzer símán be tud jelentkezni másik oldalra is.
1. Meg lehet-e ezt akadályozni, azaz, az adott domain-en létrejött juzer máshová ne tudjon bejelentkezni?
2. Meg lehet-e azt akadályozni, hogy egy juzer, aki csak az egyik domainhez tartozik, ne tudjon tartalmat fölvinni másik domain-re?
Ha igen, akkor hogyan!

Előre is köszi !

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
fgabor képe

Hello!

Nálam ugyanez a kérdés felmerült, nem találtam rá megoldást, így a userek egyedi táblák lettek, de viszont ez azt vonja maga után, hogy legyen más tábla is egyedi. A hook_domainupdate függvénnyel tudsz insertálni új usert az új domainre létrehozáskor, vagy a user_save-el esetleg, bár az nekem ennél nem működött.

Azonban a domain modul logikájába nekem ez kérdőjel még, hogy alapból a rendszer miért nem teszi lehetővége a domainenkénti egyedi userek használatát. Vagy lehetővé teszi, de én nem tudok róla, tehát ez a kérdés engem is nagyon érdekelne.

üdv

0
0
gazsesz képe

Muszáj lesz megoldani, szóval meg lesz rá a megoldás tuti, csak nagyon bíztam aboros-ban, hogy hátha csípőből kilövi a megoldást. :)

0
0

Gazsesz

aboros képe

hogy prefixeljed a user tablat. nem tunik tul nagy bodottanak. :)
nem talaltam ilyen contrib modult sajna. viszont a domain strict alapjan szerintem nem lenne tul nehez irni egy olyat, ami megtagadja a belepest, ha adott user nincs hozzarendelve az aktualis domainhez.

viszont, ha irsz is egy ilyet, azert elgondolkoznek, hogy ha tenyleg kulon user bazist kell kezelnem domainenkent, akkor biztos a domain module e a jo megoldas vagy menjek e inkabb mas iranyba.

0
0

-
clear: both;

gazsesz képe

Köszi!

Ami felé gondolkodom, persze nem biztos, hogy kivitelezhető:
- Rules modul
- minden domain-hez egy role
- ha regisztrál az oldalra, akkor automatikusan megkapja a domain role-t
- minden domain-ra belépéskor leellenőrzöm, hogy a user a megfelelő role-lal rendelkezik-e
- ha nem, akkor átirányítom a logout oldalra (magyarul kihajítom)

Ki fogom próbálni, de nyugodtan megírhatjátok, ha nagyon nagy hülyeség!

0
0

Gazsesz

gazsesz képe

Megcsináltam, működik.
Ha valakit mélyebb részletek érdekelnek, írjon bátran.

0
0

Gazsesz

aboros képe

minden domainhez egy role? nemár...
domain modul tud olyat, hogy minden usert hozzárendelhetsz (pl a user/%/edit oldalon) egy vagy több domainhez. ez a kapcsolat tehát megteremthető, csak az a "probléma", hogy a domain modul alapesetben ezt a kapcsolatot tartalom szerkesztési jogosultságok kiosztásához használja. (látod a jogosultságok oldalon az ilyen jogokat, hogy "edit domain nodes" meg ilyenek)

erre építve kéne szerintem megcsinálni, minden domain egy role megoldás már igen kevés domainnél is idegesítő lesz szerintem.

talán még rulesal is megy (php módban biztos), ugyan ez a metódus. user belép, hozzá van rendelve ő ehhez a domainhez? nincs » logout, üzenet megjelenítése neki, hogy miért lett kivágva. :)

0
0

-
clear: both;

gazsesz képe

Arra indultam el én is, hogyha már van egy user-domain összerendelés, akkor azt vizsgálom, de egyszerűen nem tudtam megoldani.
Létrehoztam egy User controll rules set-et, ahol megadtam, hogy ellenőrizze a user-hez rendelt domaint a [user:domain-id] tokennel.
Azután létrehoztam egy triggered rules-t, hogyha belép a user, akkor futtassa le a user controll Rules set-et.
Szépen le is fut, de valami miatt nem helyesen, mert tök mindegy, hogy milyen domain-hez van a user rendelve.

Ezért maradt a nem túl elegáns gyalogmódszer.

0
0

Gazsesz

gazsesz képe

Revidiálnom kell az álláspontomat, mert a fentebb leírt módszer nem csak nem elegáns, hanem nem is működik, úgyhogy ott a pont az Ádámnál.
A felhasználók domain-enkénti elkülönítésének legbiztosabb működő módja a Domain Prefix modul használata, amivel sokkal kényelmesebben és adatvédelmi szempontból is biztonságosabban meg lehet oldani ezt a problémát.

0
0

Gazsesz

gazsesz képe

Domain prefix:
Nem tudom, hogy mi az amit elcseszek, de kezdek beleőrülni. Létrehozom a domainhez rendelt users, user role, permission táblát, hogy a default domain-ből másolja át. Majd amikor az "új" domainen regisztrálok egy új júzert, akkor létrehozza a default domain-en is.
Ha default-ont kitörlöm, akkor a domain-en is kitölrődik.....áááá... olyan, mintha nem is a külön létrehozott táblát használná. Már töröltem a cache-t is.
Van valakinek ötlete, hogy miért lehet ez?

0
0

Gazsesz

gazsesz képe

No, időközben rájöttem a bugocskára.
1. Lemásolom a szükséges táblákat
2. Eldobom őket
3. Még 1x lemásolom őket
...és akkor rendesen működik.

0
0

Gazsesz

gazsesz képe

Sajnos ez sem működik tökéletesen!

Így már külön-külön kezeli a usereket, userneveket, de ugyanazt userid-t kiosztja minden domain esetén. A role-okat jól kezeli, de a user - domain összerendelés csúnyán felborul. Ha az egyik domainen létrehozott user-nél beállítom, hogy ahhoz a domain-hez tartozzon, akkor az minden olyan domianen megváltozik, ahol van ugyanolyan uid-ű júzer.

Az a megoldás jutott eszembe, hogy nem kellene kiosztani ugyanazokat az uid-eket többször, csak nem tudom, hogy hol kezdjek neki.

Amit találtam, hogy a domain_editor táblában tárolja a rendszer, hogy melyik user melyik domain-hez férhet hozzá és ez a tábla közös.

Ha vki tudna ebben segíteni, vagy van más megoldási ötlete, jelentkezzen!

0
0

Gazsesz

gazsesz képe

Kollegákkal összedugtuk a fejünket és végül egy "izgalmas" megoldásra jutottunk.

1. Leszedjük az auto increment -et user tábláról.
2. Új user létrehozásakor lekérdezzük a domain editor táblából a legnagyobb uid-et, majd ahhoz 1-et hozzáadva határozzuk meg az új user uid-jét.

Amit nem látunk pontosan, hogy okozhat-e gondot a rendszer más részeiben, működésében az auto increment eltávolítása.
Szerintetek?

0
0

Gazsesz

aboros képe

viszont azt irtam a keresobe: domain module prefix user table
kb a harmadik talalat volt egy issue, ahol ilyet szeretett volna a kolega (~2009) .. az issue végén pedig egy link egy modulcsomagra:
http://drupal.org/project/domain_bonus

Domain Bonus: Login restrict — restricts access to login users by domain affiliation.

tehat elvileg pont azt csinalja amit szeretnel.

0
0

-
clear: both;

gazsesz képe

Csak majdnem.... :(

Ezt már kipróbáltam és valóban azt csinálja, hogy csak oda enged belépni, ahová regisztráltál, azzal a szépséghibával, hogy máshová viszont nem enged regisztrálni, mert hibaüzenetet dob, hogy ez az e-mail cím már szerepel a rendszerben.

Szóval akkor lehet választanom, hogy vagy ezt az ellenőrzést kapcsolom ki, vagy a korábban leírt megoldást csinálom meg.

Csak, hogy érthető legyen a háttér: egy drupallal szolgálunk ki több, teljesen független weboldalakat, akik szeretnék a látogatóikat regisztrálni, nyilvántartani.

Amúgy köszi és boldog ünnepeket neked is meg mindenkinek!

0
0

Gazsesz

Eoxklo képe

heló!

Erre van már vmi használható megoldás?
Én is ide jutottam el sok keresgélés után, az alábbi állapottól:
http://drupal.hu/forum/multisite-sso-nelkul/18175

köszi a tippeket

0
0
Eoxklo képe

Ez megoldás lehet a dologra?
https://drupal.org/project/sharedemail

próbálta már valaki domain access-szel?

0
0