Jump to content

Netwerk load en security


Recommended Posts

De 2 presentaties van Jon Tatcher van FMI op de FMSummit waren gewijd aan server performance resp. security en dat zette me aan het denken.

 

Ik gebruik een security model dat van de FileMaker Privilegeset gebruik maakt voor beveiliging van data op tabelniveau en ook op recordniveau. Dat werkt ongeveer als volgt.

 

- Gebruiker logt in en zijn FMP account wordt in een global veld opgeslagen.

- Bij elke record wordt automatisch opgeslagen welke account de record heeft aangemaakt.

- In de privilegeset is voor een tabel aangegeven wanneer een record zichtbaar is (view): bijvoorbeeld, login_account = creation_account.

 

NB Dit kan uitgebreid worden met een extra veld met accounts waarin de eigenaar kan aangeven wie het record nog meer mogen zien, maar in principe kijkt een account alleen naar zijn eigen records.

 

Maar nu vraag ik mij af: resulteert die aanpak niet in veel extra netwerkverkeer tussen de server en de client? En als dat een probleem is, hoe zou je het anders kunnen oplossen?

 

Een global field (in dit geval: mijn login account) bestaat immers altijd op de client, en elke keer dat een record geopend wordt, moet de ‘to view or not to view-evaluatie’ uitgevoerd worden. Dit gebeurt dus kennelijk op de client, niet op de server. Of niet?

 

Ook zou dit betekenen dat het afgrendelen van delen van je tabel niet altijd resulteert in een lagere netwerkload.

 

Voorbeeld A

- je hebt een tabel met de gegevens van 10.000 personen.

- je mag alleen de gegevens inzien van personen waarvan het salaris ontbreekt ( = isempty (person::salary)).

- er wonen 1000 personen in Amsterdam waarvan 300 zonder ingevuld salaris.

- als je de gegevens van de personen in Amsterdam opvraagt, gaan er maar 300 records over het netwerk omdat de berekening 'isempty (person::salary)' op de server uitgevoerd wordt, denk ik zo.

 

Voorbeeld B

- zelfde tabel als voorbeeld A maar nu mag ik alleen maar mijn eigen records zien ( g_account = person::account_creation)

- stel er zijn 10 personen in Amsterdam waarvan ik 'eigenaar' ben.

- nu gaan er 1000 records over het netwerk, maar worden er slechts 10 van getoond omdat de client besluit dat de rest niet aan de criteria voldoet?

 

OF stuurt FileMaker eerst de waarde g_account naar de server en voert daar de evaluatie uit?

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...