Warsztat 2: Dynamiczne przydzielanie uprawnień, blokowanie okna bazy, wyszarzenie X w oknie aplikacji i inne.

BraLogoDB.zip
Autor: Zbigniew Bratko
Baza w formacie MsAccess 97 
145kB, 22-11-2001

Opis problemu:

System zabezpieczeń w MsAccess nie należy do najprostszych, ani do najbardziej przejrzystych. Nie zawsze najlepszym rozwiązaniem jest zablokować wszystko, co się da. Umiejętność dostosowania użytych mechanizmów zabezpieczeń do potrzeb, jest ważnym etapem przygotowania programu.

Rozwiązanie:

Wielkie uznanie mam dla prób Zbyszka Bratko w oswajaniu mniej wygodnych mechanizmów Accessa. Tym razem wziął pod lupę możliwości Accessa w zakresie sterowania dostępem użytkowników do wybranych obiektów programu i samych danych. Jego program BraLogoDB.zip - jak to Zbyszek ma w zwyczaju - jest naładowany gamą pomysłów zrealizowanych z dużą starannością.

Poniżej cytuję tekst, który Zbyszek dołączył do programu.

Baza BraLogoDB.mdb porusza dwa zagadnienia: LOGOWANIE: 1. Przydzielenie (po zalogowaniu się) uprawnień do otwieranego formularza (do zmian rekordów, usuwania, dodawania, edycji), uaktywnienie pozycji subMenu i przycisku paska narzędzi przypisanych do poszczególnych uprawnień, 2. Zapisywanie wszystkich zmian dokonanych w poszczególnych formantach (etykieta formantu, stara wartość, nowa wartość, rekordy usuwane i dodawane oraz data czynności i identyfikator zalogowanego). Pseudo-ZABEZPECZENIA, a raczej pseudo-UTRUDNIENIA: 1. Uniemożliwienie dostępu do okna bazy poprzez m.in. Unhide.exe (przynajmniej na razie :-)), lub po odkryciu okna bazy z kodu VBA, Wyjaśnienie: Chodzi o program Krzysztofa Czuryło AccessUnhide.exe ( AccessUnhide.zip), dostępny na stronie Autora.
AccessUnhide.exe potrafi odkrywać okno bazy danych bez względu na zapezpieczenia użytkownika, nawet w środowisku Run-Time. 2. Ograniczenie możliwości zmian w Autostarcie (sprawdzanie - tu co 1 sek.), 3. Zapisanie ewentualnych zmian w Autostarcie i przywrócenie starych ustawień, 4. Blokada Shifta, brak dostępu do klawiszy funkcyjnych i menu Accessa, własne menu bez możliwości dostosowywania. ShifterMain bez żadnych problemów obnaża braki wszelkich PSEUDO.... Po zastosowaniu Shiftera uzyskuje się pełny dostęp do bazy. Aby ograniczyć dostęp do danych, tabele są przyłączne dopiero po prawidłowym uruchomieniu frmSprawdzaj, a formularze nie otworzą się jeżeli brakuje tabel. Ale wszystko to "To tylko PSEUDOzabawa" Jeżeli chodzi o PSEUDO.... dla Dane.mdb to już inna historia. UWAGA: BraLogoDB.mdb wymaga odwołania do Microsoft 8.0 Object Library. BraLogoDB.mdb i Dane.mdb muszą znajdować się w tym samym katalogu.