Článek: AN0002033Aktualizováno::
Uživatelé jsou v jedné instanci ObjectGears sdíleni napříč všemi modely. Každý uživatel může zobrazit stránku Informace o uživatele (QuickPersonInfo) s daty libovolného uživatele. Podobně při výběru ve sloupci typu Číselníková hodnota, který se odkazuje na uživatele, je vidět seznam všech uživatelů. Toto chování vyhovuje při používání ObjectGears v rámci jedné společnosti.
V určitých případech je však vhodné toto omezit a umožnit uživateli zobrazení jiných uživatelů z dané společnosti/organizační jednotky, ne však uživatelů z jiných společností/organizačních jednotek. Příkladem může být využití ObjectGears pro sdílení informací se zákazníky a obchodními partnery, kdy pravděpodobně nebudeme chtít, aby uživatel z jedné společnosti viděl uživatele z jiné společnosti.
Tohoto chování docílíme následujícím způsobem:
1. Omezení zobrazení stránky Informace o uživatele (QuickPersonInfo) s daty jiných uživatelů.
Použijeme skript pro tuto stránku, který nastavíme ve Skriptech stránek správy - Informace o uživateli. Skript zvolíme dle našich potřeb. Níže uvedený příklad povolí uživateli, který není administrátorem, přístup pouze na danou stránku s jeho vlastními daty. V případě pokusu o přístup na stránku s daty jiného uživatele, uživatel obdrží chybovou hlášku.
function OnLoad()
{
if (!( OGPerson != null && ( OG.Person.IsUserAdmin() || OGPerson.Id == OG.Person.GetLoginPerson().Id )))
{
OGForm.RedirectToAccessDenied('Na stránku má přístup pouze administrátor.');
}
}
Pozn.: Uživatel by měl mít vždy možnost přístupu na svoji stránku Informace o uživateli za účelem změny jazykového nastavení, změny hesla nebo kontroly času posledního přihlášení.
2. Omezení zobrazených uživatelů při výběru ve sloupcích typu Číselníková hodnota - odkaz na uživatele.
K tomuto omezení slouží parametr PersonOrgStructureId v souboru web.config. V daném parametru se lze odkázat na organizační strukturu, která je typu Týmová struktura. Pro to, kteří uživatelé vidí které uživatele, je klíčová vlastnost Sloupec s uživatelem/li.
Uživatel vidí ty uživatele, se kterými je uveden ve sloupci zvoleném u dané organizační struktury jako Sloupec s uživatelem/li. V uvedeném příkladu je to sloupec Members.
Uživatel George Hill tak vidí pouze sebe a uživatele Alex Thompson. Uživatel Alex Thompson vidí sebe, uživatele George Hill a uživatele Duncan Krueger. Uživatel Alex Thompson nevidí uživatele Richard Jung, protože ten je označen jako smazaný.)