Strona 1 z 1

Rejestr w Base z uprawnieniami użytkownika

PostNapisane: Pn lip 22, 2019 9:53 am
przez qlimmax
Witam,
muszę zrobić rejestr umów, do którego wielu użytkowników będzie następnie miało dostęp, będą mogli dopisywać umowy do swoich działów np. kadry, ale nie będą mogli ich usuwać. Czy można coś takiego zrealizować w Base? Czy lepszy byłby dostęp do bazy w mysql czy też do bazy plikowej umieszczonej na zasobie sieciowym?

Czy jest możliwość, aby np. pracownicy danego wydziału mogli edytować tylko swoje wpisy?

Re: Rejestr w Base z uprawnieniami użytkownika

PostNapisane: So lip 27, 2019 11:29 pm
przez Jan_J
Base domyślnie korzysta z wbudowanego silnika HSQL DB w wersji 1.8; mocno przestarzałego, ale obsługującego role i przywileje.
Patrz http://www.hsqldb.org/doc/1.8/guide/gui ... nt-section

W LibreOffice istnieje też standardowy moduł do budowania osadzonych baz danych pod nadzorem Firebirda. Tam też role i transakcje są możliwe.

Tak że ograniczenia dot. uprawnień są możliwe, ale mogą wymagać budowy schematu bazy za pomocą kodu SQL.

Standard SQL przewiduje GRANT i REVOKE w odniesieniu do encji. tj. obiektów nbazwanych, jak tabele, perspektywy. Wymaganie, by `pracownik mógł redagować tylko swoje wpisy` zdaje się odnosić do krotek będących w jednej tabeli. Do tego wg mojej wiedzy standardowy mechanizm uprawnień nie wystarczy; potrzebne byłyby wyzwalacze (triggers). Obie wymienione bazy obsługują wyzwalacze, choć przygotowuje się je w zupełnie inny sposób.

Z punktu widzenia przenośności radziłbym użyć poważnej, zewnętrznej bazy, w możliwie wysokim stopniu opartej na standardach. Np Postgresql, MySQL/MariaDB, Firebird też dość dobrze.