Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Access <2000] Beveiliging

Pagina: 1
Acties:

  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 28-03-2023

YellowOnline

BEATI PAVPERES SPIRITV

Topicstarter
Dag iedereen,

Mijn databaseproject nadert zijn einde. Omwille van de complexiteit heb ik een tijd met een VB programmeur gewerkt zodat uiteindelijk alles op zijn pootjes gekomen is. Na 6 weken aan 80 uur per week te werken heb ik dan ook mijn buik vol van Access, Visual Basic, SQL en getalletjes. Ik ga tot het einde van het jaar groenten kweken nu (just kidding).
Helaas, zoals steeds wegen de laatste loodjes het zwaarst. Nu de database vrijwel af is moet ik aan de beveiliging er van denken. Ik vind hier evenwel weinig info over terug, behalve dat veiligheid nooit een prioriteit geweest is bij het ontwikkelen van Access.
Liefst zou ik hebben dat ze de database openen en meteen het switchboard zien; en dat ze de interface van Access zelf niet kunnen zien, laat staan in de achterliggende code en tabellen gaan prutsen.

Gevonden oplossingen:
- Compilen naar een .exe. Probleem: tools die ik vond zijn duur en ik maak me zorgen over het toevoegen en verwijderen uit de database zelf. Daarnaast is de database zo complex en groot dat ik vrees dat een compiler het zou durven laten afweten. Tenslotte moet het wel mogelijk zijn voor een admin om zo nodig (bugfixes) aan de structuur te zitten via een wachtwoord.
- Omzetten naar .mde. Gaat eenvoudig weg niet. De database is te groot hiervoor. "Because of the method used to compile the database, a considerable number of TableID references are created for each table.  The Access database engine can only create a maximum of 2048 open TableIDs at one time. " In de simulatormodule wordt die 2048 vlotjes overschreden.
- Tables Queries en Forms verbergen. Dit is een vorm van "security through obscurity". Daarnaast blijft de Access-interface zelf wel zichtbaar.

Terzijde: ik maak alles via MS Access 2007, maar de end-users gebruiken zowel 2000, 2002 als XP.

Alvast bedankt voor jullie ideeën.

Edit: Meh, ik ontdek net een grote knop "Users and Permissions" naast de knop om om te zetten naar .mde. Daar heb ik serieus naastgekeken. Ik ga morgen daar eerst wat mee experimenteren. Op het eerste zicht lijkt dit mijn probleem op te lossen. Enkel nog een oplossing vinden om Access "full screen" te draaien. Via de grote Office Knop (god, waar verbergen ze die dingen in 2007) vond ik een interessante knop "Access Options" die een hoop dingen laat verbergen van de interface (maar nog niet genoeg helaas). Daar stond ook een functie die toelaat om een bepaalde form te openen wanneer de database geopend wordt.
Misschien was deze TS achteraf gezien wat voorbarig... er moet een applicatie komen die het verbied een topic te openen na 16u onafgebroken code-staring. :+

[ Voor 16% gewijzigd door YellowOnline op 28-10-2008 00:57 ]


  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Ik heb sinds Access 97 er weinig meer mee gedaan dus met een korreltje zout:
Nu de database vrijwel af is moet ik aan de beveiliging er van denken.
Sorry dat ik dat nu roep, maar dat over de beveiliging denken is 6 weken te laat :o

Ik zou voor een client/server of liever webbased oplossing gaan, maar dat zal wel te laat zijn om te suggereren. Wat soort beveiliging bedoel je? Ben je bang dat men er met je werk vandoor gaat? Mag de data niet gelezen worden zonder de juiste credentials? Niet bewerkt? Is het een probleem als iemand met de juiste tooltjes het na een weekje zweten weet te kraken?

Misschien heb je wel genoeg aan een handtekening van de gebruiker. Misschien wat extra code, misschien opnieuw beginnen.

--
Er zijn nogal wat veranderingen sinds OFF2000; heb je goed getest of alles functioneel, laat staan qua beveiliging, goed gaat werken? Dat lijkt me (met mijn beperkte ervaring met de nieuwe versie) zeker bij ontwikkelen in ACC2k7 niet vanzelfsprekend.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 28-03-2023

YellowOnline

BEATI PAVPERES SPIRITV

Topicstarter
Ik was vergeten dat veiligheid een breed begrip is natuurlijk. Dit is een managementtool dat op lokale PCs gaat draaien. Met veiligheid bedoel ik dus niet zozeer veiligheid mbt. to wie in het bestand mag en wie niet, maar veiligheid in de zin van dummy-proof. De database en de ingebouwde tools zijn zo gemaakt dat een kleuter onmiddelijk er mee aan de slag kan. Het zegt misschien wat over mezelf, maar bij de eindgebruiker stel ik me een zesjarige voor. Op deze manier ben ik het zekerst dat er geen onverwachte gebruikersproblemen optreden.
De problemen inzake gebruiksvriendelijkheid zijn nu de volgende:
a) Wanneer de gebruiker op de database klikt krijgt hij eerst al een melding dat om veiligheidsredenen VB uitgeschakeld is. ("Paniek! De PC gaat ontploffen!");
b) Als de gebruiker die hindernis omzeilt heeft (uh, op 'enable' klikken) moet hij zelf nog op de Switchboard form klikken. Ok, dit valt vast te automatiseren, daar heb ik nog niet op gezocht om eerlijk te zijn - mijn voornaamste zorg is dan ook het volgende punt;
c) De user ziet de Access interface. Dat betekent praktisch twee dingen: 1. verlies van schermgrootte (en die is echt nodig omdat er anders teveel scrollbars zijn), wat op een laptop of een monitor met een lage resolutie (1280x1024) zeer storend kan zijn. Het programma komt past tot zijn recht op 1920x1200, maar in de breedte wordt dat opgelost door dual screen.
Mijn allergrootste zorg wanneer de gebruiker de interface kan zien is echter dat hij (of zij) in de code, tables, queries of forms gaat rommelen. Het zou niet mogen, maar er is zoveel dat niet mag en toch gebeurd. Dit wil ik ten allen koste vermijden. Zonder wachtwoord of zo mag enkel het Switchboard en de daarmee gelieerde forms zichtbaar zijn.

(Ivm de database: 2MB compresseerd, 3 switchboards, 1 macro, 1 module, 25 forms, 20 queries en 15 tables. Voor een MS Access DB is dit al heel wat.)

Edit: overigens, in MSA2K is het nog niet getest, de andere versies wel. Maar de users kunnen upgraden naar 2002 (unlimited licenses voor die versie - wist niet eens dat dat bestond) indien het niet zou gaan, dus dat is eigenlijk geen echt issue.
Edit2: TS geëdit. Zie aldaar.

[ Voor 6% gewijzigd door YellowOnline op 28-10-2008 00:45 ]


  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

YellowOnline schreef op dinsdag 28 oktober 2008 @ 00:31:
a) Wanneer de gebruiker op de database klikt krijgt hij eerst al een melding dat om veiligheidsredenen VB uitgeschakeld is. ("Paniek! De PC gaat ontploffen!");
Onderteken je code.
b) Als de gebruiker die hindernis omzeilt heeft (uh, op 'enable' klikken) moet hij zelf nog op de Switchboard form klikken. Ok, dit valt vast te automatiseren, daar heb ik nog niet op gezocht om eerlijk te zijn - mijn voornaamste zorg is dan ook het volgende punt;
Geef het opstartform aan en schakel de shift toets uit.
c) De user ziet de Access interface. Dat betekent praktisch twee dingen: 1. verlies van schermgrootte (en die is echt nodig omdat er anders teveel scrollbars zijn), wat op een laptop of een monitor met een lage resolutie (1280x1024) zeer storend kan zijn. Het programma komt past tot zijn recht op 1920x1200, maar in de breedte wordt dat opgelost door dual screen.
Maak je eigen werkbalken en schakel de default uit. Hier heb je trouwens het belangrijkste verschil tussen Access 2007 en voorgaande versie's te pakken.
Mijn allergrootste zorg wanneer de gebruiker de interface kan zien is echter dat hij (of zij) in de code, tables, queries of forms gaat rommelen. Het zou niet mogen, maar er is zoveel dat niet mag en toch gebeurd. Dit wil ik ten allen koste vermijden. Zonder wachtwoord of zo mag enkel het Switchboard en de daarmee gelieerde forms zichtbaar zijn.
Dan heeft het omzetten naar mde bestand ook geen enkele zin.
(Ivm de database: 2MB compresseerd, 3 switchboards, 1 macro, 1 module, 25 forms, 20 queries en 15 tables. Voor een MS Access DB is dit al heel wat.)
Nee. Ook in Access stellen 15 tabellen en 1 module (hoe groot is dat ding dan, als je er zes weken aan gewerkt hebt-waarom heb je alles in 1 module gezet?) niet veel voor.


Nofi, maar ik krijg de indruk dat je Access en het beveiligingsmodel amper kent. Microsoft heeft vrij uitgebreide documentatie over het ontwikkelen van applicaties in Access waar al die punten in de behandeld worden. Je zult aan de studie moeten. :)

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 28-03-2023

YellowOnline

BEATI PAVPERES SPIRITV

Topicstarter
Dank je voor je reactie.
Mmm, is zo'n certificaat geen dure affaire via Thawte?
Lustucru schreef op dinsdag 28 oktober 2008 @ 08:52:
Geef het opstartform aan en schakel de shift toets uit.
Dit had ik intussen al ontdekt :)
Lustucru schreef op dinsdag 28 oktober 2008 @ 08:52:
Maak je eigen werkbalken en schakel de default uit. Hier heb je trouwens het belangrijkste verschil tussen Access 2007 en voorgaande versie's te pakken.
Daar ben ik nu volop mee aan het experimenteren. Goed te weten dat dit anders is op de andere versies van MSA.
Lustucru schreef op dinsdag 28 oktober 2008 @ 08:52:
Dan heeft het omzetten naar mde bestand ook geen enkele zin.
Dit was een suggestie die ik ergens las, de precieze inhoud van een .mde ken ik (nog) niet.
Lustucru schreef op dinsdag 28 oktober 2008 @ 08:52:
Nee. Ook in Access stellen 15 tabellen en 1 module (hoe groot is dat ding dan, als je er zes weken aan gewerkt hebt-waarom heb je alles in 1 module gezet?) niet veel voor.
De module komt van de VB programmeur - de reden daarvoor kan ik dus niet beantwoorden. De complexiteit zit 'm vooral in de simulator die on-the-fly prijzen moet berekenen voor bepaalde klasses van ingrediënten in chemische formules. Sommige ingrediënten zijn zelf ook een formule en kunnen op hun beurt ingrediënten bevatten die een formule zijn. Hierbij komt nog een heleboel conversie van munteenheden. Daarnaast worden de wijzigingen in de waardes niet toegepast op een vaste waarde maar op een product van de vaste waarde met een andere variabele waarde. Enfin, het klinkt eenvoudiger dan het is - om bedrijfsgeheimredenen kan ik het helaas niet gewoon laten zien. Ik ben al blij dat het eindelijk allemaal werkt.
Lustucru schreef op dinsdag 28 oktober 2008 @ 08:52:
Nofi, maar ik krijg de indruk dat je Access en het beveiligingsmodel amper kent. Microsoft heeft vrij uitgebreide documentatie over het ontwikkelen van applicaties in Access waar al die punten in de behandeld worden. Je zult aan de studie moeten. :)
Zoals ik in een andere thread vertelde: ik ben voor een tijdelijk project aangeworven in Excel. De opdracht bleek evenwel onmogelijk in Excel dus ik ben naar Access moeten overstappen. Voorkennis Access was wat ik tien jaar geleden op school terloops gezien had in de les informatica - stelt niets voor kortom. Ik heb me op een maand tijd moeten omscholen naar een (halve) database-expert en tussendoor ook nog wat stukjes VBA moeten leren. Het is dus geen wonder dat ik dat beveiligingsmodel niet ken. Ik ben zowel Access en als beveiliging ervan the hard way aan het leren.

[ Voor 3% gewijzigd door YellowOnline op 28-10-2008 12:27 ]