15. Jak zabezpieczyć tabele w wygodny sposób?

Zabezpieczenia dostępne w Accessie pozwalają chronić nasze dane jedynie w ograniczony sposób, za to bardzo skutecznie utrudniają życie samym programistom - osobom piszącym chronione bazy. To paradoks i raczej dziwna polityka Ms. Czy nie ma jakiegoś prostego sposobu ochrony danych, wygodnego w użyciu nawet dla początkujących twórców?

Chcę dzisiaj przedstawić jedną z takich prostych metod. Nie jest to zabezpieczenie doskonałe pod względem skuteczności, ale za to bardzo przyjazne dla programisty. Chodzi o nietypowe ukrycie tabel, tak dokładne, że nie da się ich zobaczyć w oknie bazy danych. Nie pomaga zaznaczanie w opcjach "Pokaż elementy ukryte", nie wykryje ich również próba importu do innej bazy - włamywacz nie zobaczy tych tabel. Natomiast dla naszej aplikacji ukryte dane są całkowicie dostępne :-)

Jak się nazywa to zaklęcie, które tak potrafi ukryć dane? Oto one:

CurrentDb.TableDefs("Tabela1").Attributes = 1
CurrentDb.TableDefs("MSysObjects").Attributes = 1
Włamywacz nie wie, że chronione tabele w ogóle tam są (w tym celu również ukrywamy MSysObjects, żeby nie ułatwiać mu zadania).
A jak odczynić zaklęcie? Też prosto.. Wystarczy jedna linijka kodu, trzeba tylko wiedzieć jaka ;-)
CurrentDb.TableDefs("Tabela1").Attributes = 0
To działa. Sprawdźcie sami.

Krzysztof Pozorek