sql >> Databasteknik >  >> RDS >> Mysql

MYSQL åtkomstkontroll

Det finns tre tillvägagångssätt du kan använda:

  1. Gör det i appen
  2. Gör det mellan appen och db, inuti en db-proxy
  3. Gör det i databasen

Det första alternativet skulle inte riktigt kvalificera sig som åtkomstkontroll på radnivå eftersom applikationslogiken är den som ansvarar för filtreringen/maskeringen. (Filtrering är åtkomstkontroll på radnivå medan maskering är cellnivå).

Det andra alternativet , med hjälp av en proxy, är ett tillvägagångssätt som används alltmer. Det finns dedikerade lösningar som:

  1. GreenSQL
  2. Informatica DDM och
  3. Axiomatics dataåtkomstfilter.

Dessa lösningar fångar vanligtvis upp SQL-trafiken och modifierar den så att endast auktoriserad data returneras. Detta kallas dynamisk datamaskering . Det förklaras lite mer på Wikipedia .

Det tredje alternativet är att använda databasens ursprungliga funktioner. Oracle har till exempel något som kallas Virtual Private Database (VPD) som låter dig konfigurera avancerade radfiltreringsfunktioner.

I ditt fall (MySQL) finns det något som kallas finkornig åtkomstkontroll (FGAC). Det finns en bra artikel om ämnet här . Googla på den termen för fler resurser.




  1. fick ett urval som gör 10 frågor i doktrin (Symfony)

  2. PostgreSQL:Varning:Konsolens teckentabell (437) skiljer sig från Windows teckentabell (1252)

  3. Övervaka MySQL-prestanda med ClusterControl

  4. SQLite IN