Dynamické udělování uživatelských oprávnění

Automaticky přeloženo z Deepl

Po možnosti používat vlastní systém správy koncových uživatelů a SET USER ALIAS příkazu vás možná zajímá, jak můžete spravovat oprávnění koncových uživatelů, aniž byste museli vytvářet více uživatelských účtů 4D. Čtěte dál, protože tato verze funkce přináší odpověď!

Vývojáři 4D často potřebují spravovat koncové uživatele pomocí vlastního adresářového systému(např. z interního vývoje na externí pomocí LDAP nebo SSO). Jedním z řešení bylo vytvořit tolik uživatelských účtů 4D, kolik je práv, a pak přecházet z jednoho na druhý.

4D v18 R4 dělá věci intuitivnější tím, že umožňuje nastavit práva uživatelů se skupinami … dynamicky.

Nejjednodušší je vytvořit výchozí uživatelský účet bez členství ve skupinách:

Pak můžete vytvořit skupinu pro každé právo, které chcete spravovat.

blank

Za běhu můžete stále používat příkaz SET USER ALIAS příkaz nastavit jméno uživatele tak, aby se zobrazovalo všude v databázi.

Nyní můžete pomocí nového příkazu SET GROUP ACCESS dynamicky nastavit i členství ve skupinách.

Všimněte si, že tyto dva příkazy nejsou k dispozici na straně serveru.

Zde je ukázka kódu spuštěná na vzdáleném klientovi po vlastním ověření uživatele:

// Set my own user field as alias
SET USER ALIAS([MyUserTable]Name)

// Set user groups following rights
C_COLLECTION ($userGroups)
$userGroups :=New collection
If([MyUserTable]4DWriteProAccess)
$userGroups .push("4D Write Pro")
End if
If ([MyUserTable]4DViewProAccess)
$userGroups .push("4D View Pro")
End if
SET GROUP ACCESS ($userGroups).

Pokud chcete, můžete nastavit přístup aktuální skupiny uživatelů na žádný:

SET GROUP ACCESS(New collection)

Můžete obnovit přístup k aktuální skupině uživatelů tak, jak je uložen v adresářovém souboru:

SET GROUP ACCESS

Nový příkaz Get group access umožňuje načíst aktuální členství ve skupině:

SET GROUP ACCESS(New collection("4D View Pro"; "4D Write Pro"))

$collection :=Get group access
// $collection obsahuje ["4D View Pro", "4D Write Pro"].

Všechny zadané skupinové přístupy nemají vliv na adresář uživatele / skupiny.

Nyní je řada na vás, abyste si to vyzkoušeli. Spravujte své uživatele a skupiny dynamicky … jak chcete!

Avatar
• Product Owner • Damien Fuzeau se připojil k týmu 4D Product v únoru 2019. Jako Product Owner má na starosti psaní uživatelských příběhů a jejich následný převod do funkčních specifikací. Jeho úkolem je také zajistit, aby dodávané implementace funkcí vyhovovaly potřebám zákazníků. Damien vystudoval softwarové inženýrství na University of Nantes. Ve své bývalé společnosti strávil více než 23 let, nejprve jako vývojář (objevil 4D v roce 1997) a později jako technický manažer a softwarový architekt. Tato společnost je partnerem 4D OEM a nasadila obchodní software založený na 4D pro tisíce uživatelů na stovkách serverů. Damien je tedy zvyklý na 4D vývoj a nasazení ve vícejazyčném kontextu.