Sigurtà u DBMS: dak li għandek bżonn tiftakar meta tagħżel għodod tas-sigurtà

Sigurtà u DBMS: dak li għandek bżonn tiftakar meta tagħżel għodod tas-sigurtà

Jisimni Denis Rozhkov, jien il-kap tal-iżvilupp tas-softwer fil-kumpanija Gazinformservice, fit-tim tal-prodott Jatoba. Il-leġiżlazzjoni u r-regolamenti korporattivi jimponu ċerti rekwiżiti għas-sigurtà tal-ħażna tad-dejta. Ħadd ma jrid li partijiet terzi jiksbu aċċess għal informazzjoni kunfidenzjali, għalhekk il-kwistjonijiet li ġejjin huma importanti għal kwalunkwe proġett: identifikazzjoni u awtentikazzjoni, ġestjoni tal-aċċess għad-dejta, jiżguraw l-integrità tal-informazzjoni fis-sistema, illoggjar ta 'avvenimenti ta' sigurtà. Għalhekk, irrid nitkellem dwar xi punti interessanti dwar is-sigurtà tad-DBMS.

L-artiklu tħejja bbażat fuq diskors fi @DatabasesMeetup, organizzati Mail.ru Soluzzjonijiet Cloud. Jekk ma tridx taqra, tista' tara:


L-artiklu se jkollu tliet partijiet:

  • Kif tiżgura l-konnessjonijiet.
  • X'inhu verifika ta 'azzjonijiet u kif jirreġistra dak li qed jiġri fuq in-naħa tad-database u l-konnessjoni magħha.
  • Kif tipproteġi d-data fid-database nnifisha u liema teknoloġiji huma disponibbli għal dan.

Sigurtà u DBMS: dak li għandek bżonn tiftakar meta tagħżel għodod tas-sigurtà
Tliet komponenti tas-sigurtà tad-DBMS: protezzjoni tal-konnessjoni, verifika tal-attività u protezzjoni tad-dejta

L-iżgurar tal-konnessjonijiet tiegħek

Tista' tikkonnettja mad-database jew direttament jew indirettament permezz ta' applikazzjonijiet tal-web. Bħala regola, l-utent tan-negozju, jiġifieri, il-persuna li taħdem mad-DBMS, jinteraġixxi miegħu indirettament.

Qabel ma titkellem dwar il-protezzjoni tal-konnessjonijiet, trid twieġeb mistoqsijiet importanti li jiddeterminaw kif se jiġu strutturati l-miżuri tas-sigurtà:

  • Utent kummerċjali wieħed huwa ekwivalenti għal utent wieħed tad-DBMS?
  • jekk l-aċċess għad-dejta tad-DBMS huwiex ipprovdut biss permezz ta’ API li inti tikkontrolla, jew jekk it-tabelli humiex aċċessati direttament;
  • jekk id-DBMS huwiex allokat għal segment protett separat, min jinteraġixxi miegħu u kif;
  • jekk jintużawx pooling/proxy u saffi intermedji, li jistgħu jibdlu l-informazzjoni dwar kif tinbena l-konnessjoni u min qed juża d-database.

Issa ejja naraw liema għodod jistgħu jintużaw biex jiżguraw il-konnessjonijiet:

  1. Uża soluzzjonijiet tal-klassi firewall tad-database. Saff addizzjonali ta' protezzjoni, bħala minimu, iżid it-trasparenza ta' dak li qed jiġri fid-DBMS, u fil-massimu, tkun tista' tipprovdi protezzjoni tad-dejta addizzjonali.
  2. Uża politiki tal-password. L-użu tagħhom jiddependi fuq kif tinbena l-arkitettura tiegħek. Fi kwalunkwe każ, password waħda fil-fajl tal-konfigurazzjoni ta 'applikazzjoni tal-web li tikkonnettja mad-DBMS mhix biżżejjed għall-protezzjoni. Hemm numru ta 'għodod DBMS li jippermettulek tikkontrolla li l-utent u l-password jeħtieġu aġġornament.

    Tista' taqra aktar dwar il-funzjonijiet tal-klassifikazzjoni tal-utent hawn, tista' wkoll issir taf dwar MS SQL Vulnerability Assessmen hawn

  3. Jarrikkixxi l-kuntest tas-sessjoni bl-informazzjoni meħtieġa. Jekk is-sessjoni hija opaka, ma tifhimx min qed jaħdem fid-DBMS fil-qafas tiegħu, tista ', fil-qafas tal-operazzjoni li qed titwettaq, iżżid informazzjoni dwar min qed jagħmel xiex u għaliex. Din l-informazzjoni tista' tidher fil-verifika.
  4. Ikkonfigura SSL jekk ma jkollokx separazzjoni tan-netwerk bejn id-DBMS u l-utenti finali; mhuwiex f'VLAN separat. F'każijiet bħal dawn, huwa imperattiv li jiġi protett il-kanal bejn il-konsumatur u d-DBMS innifsu. Għodod tas-sigurtà huma wkoll disponibbli f'sors miftuħ.

Dan kif se jaffettwa l-prestazzjoni tad-DBMS?

Ejja nħarsu lejn l-eżempju ta 'PostgreSQL biex naraw kif SSL taffettwa t-tagħbija tas-CPU, iżid il-ħinijiet u jnaqqas it-TPS, u jekk tikkonsmax wisq riżorsi jekk tagħmilha possibbli.

It-tagħbija ta 'PostgreSQL bl-użu ta' pgbench huwa programm sempliċi għat-tmexxija tat-testijiet tal-prestazzjoni. Tesegwixxi sekwenza waħda ta 'kmandi ripetutament, possibbilment f'sessjonijiet ta' database paralleli, u mbagħad tikkalkula r-rata medja tat-tranżazzjoni.

Test 1 mingħajr SSL u bl-użu ta 'SSL — il-konnessjoni hija stabbilita għal kull tranżazzjoni:

pgbench.exe --connect -c 10 -t 5000 "host=192.168.220.129 dbname=taskdb user=postgres sslmode=require 
sslrootcert=rootCA.crt sslcert=client.crt sslkey=client.key"

vs

pgbench.exe --connect -c 10 -t 5000 "host=192.168.220.129 dbname=taskdb user=postgres"

Test 2 mingħajr SSL u bl-użu ta 'SSL — it-tranżazzjonijiet kollha jsiru f'konnessjoni waħda:

pgbench.exe -c 10 -t 5000 "host=192.168.220.129 dbname=taskdb user=postgres sslmode=require
sslrootcert=rootCA.crt sslcert=client.crt sslkey=client.key"

vs

pgbench.exe -c 10 -t 5000 "host=192.168.220.129 dbname=taskdb user=postgres"

Settings oħra:

scaling factor: 1
query mode: simple
number of clients: 10
number of threads: 1
number of transactions per client: 5000
number of transactions actually processed: 50000/50000

Ir-riżultati tat-test:

 
L-EBDA SSL
SSL

Konnessjoni hija stabbilita għal kull tranżazzjoni

latenza medja
171.915 ms
187.695 ms

tps inklużi konnessjonijiet li jistabbilixxu
58.168112
53.278062

tps esklużi konnessjonijiet li jistabbilixxu
64.084546
58.725846

CPU
24%
28%

It-tranżazzjonijiet kollha jsiru f'konnessjoni waħda

latenza medja
6.722 ms
6.342 ms

tps inklużi konnessjonijiet li jistabbilixxu
1587.657278
1576.792883

tps esklużi konnessjonijiet li jistabbilixxu
1588.380574
1577.694766

CPU
17%
21%

F'tagħbijiet ħfief, l-influwenza ta 'SSL hija komparabbli mal-iżball tal-kejl. Jekk l-ammont ta 'data trasferita huwa kbir ħafna, is-sitwazzjoni tista' tkun differenti. Jekk nistabbilixxu konnessjoni waħda għal kull tranżazzjoni (dan huwa rari, ġeneralment il-konnessjoni hija kondiviża bejn l-utenti), għandek numru kbir ta 'konnessjonijiet/skonnessjonijiet, l-impatt jista' jkun ftit akbar. Jiġifieri, jista 'jkun hemm riskji ta' prestazzjoni mnaqqsa, madankollu, id-differenza mhix daqshekk kbira li ma tużax protezzjoni.

Jekk jogħġbok innota li hemm differenza qawwija jekk tqabbel il-modi operattivi: qed taħdem fl-istess sessjoni jew f'oħrajn differenti. Dan jista 'jinftiehem: ir-riżorsi jintefqu fuq il-ħolqien ta' kull konnessjoni.

Kellna każ meta konna konna Zabbix fil-modalità fiduċja, jiġifieri, md5 ma ġiex iċċekkjat, ma kienx hemm bżonn ta 'awtentikazzjoni. Imbagħad il-klijent talab li jippermetti l-mod ta 'awtentikazzjoni md5. Dan poġġa tagħbija kbira fuq is-CPU, u l-prestazzjoni naqset. Bdejna nfittxu modi kif nottimizzaw. Waħda mis-soluzzjonijiet possibbli għall-problema hija li timplimenta restrizzjonijiet tan-netwerk, tagħmel VLANs separati għad-DBMS, żid is-settings biex tagħmilha ċara min qed tikkonnettja minn fejn u tneħħi l-awtentikazzjoni.Tista 'wkoll tottimizza l-issettjar tal-awtentikazzjoni biex tnaqqas l-ispejjeż meta tippermetti l-awtentikazzjoni, iżda b'mod ġenerali l-użu ta 'metodi differenti ta' awtentikazzjoni taffettwa l-prestazzjoni u jeħtieġ li dawn il-fatturi jitqiesu meta tiddisinja l-qawwa tal-kompjuters tas-servers (ħardwer) għad-DBMS.

Konklużjoni: f'numru ta 'soluzzjonijiet, anke sfumaturi żgħar fl-awtentikazzjoni jistgħu jaffettwaw ħafna l-proġett u huwa ħażin meta dan isir ċar biss meta jiġi implimentat fil-produzzjoni.

Verifika ta' azzjoni

Verifika tista 'tkun mhux biss DBMS. Verifika hija dwar il-kisba ta' informazzjoni dwar dak li qed jiġri f'segmenti differenti. Dan jista 'jkun jew firewall tad-database jew is-sistema operattiva li fuqha huwa mibni d-DBMS.

F'DBMSs kummerċjali fil-livell ta 'Intrapriża kollox huwa tajjeb bil-verifika, iżda f'sors miftuħ - mhux dejjem. Hawn x'għandu PostgreSQL:

  • log default - illoggjar integrat;
  • estensjonijiet: pgaudit - jekk il-logging default mhuwiex biżżejjed għalik, tista' tuża settings separati li jsolvu xi problemi.

Żieda mar-rapport fil-video:

"Logging tad-dikjarazzjoni bażika jista 'jiġi pprovdut minn faċilità ta' illoggjar standard b'log_statement = all.

Dan huwa aċċettabbli għall-monitoraġġ u użi oħra, iżda ma jipprovdix il-livell ta' dettall tipikament meħtieġ għall-awditjar.

Mhuwiex biżżejjed li jkollok lista tal-operazzjonijiet kollha mwettqa fuq id-database.

Għandu jkun possibbli wkoll li jinstabu dikjarazzjonijiet speċifiċi li huma ta' interess għall-awditur.

L-illoggjar standard juri dak li talab l-utent, filwaqt li pgAudit jiffoka fuq id-dettalji ta 'dak li ġara meta d-database esegwit il-mistoqsija.

Pereżempju, l-awditur jista' jkun irid jivverifika li tabella partikolari nħolqot f'tieqa ta' manutenzjoni dokumentata.

Dan jista 'jidher biċċa xogħol sempliċi b'awditjar bażiku u grep, imma x'jiġri jekk ġejt ippreżentat b'xi ħaġa bħal dan l-eżempju (intenzjonalment konfuż):

DO$$
BEGIN
EŻEŻEWĠA 'ĦLOQ importazzjoni TABELLA' || 'ant_table(id int)';
TMIEM$$;

Il-qtugħ standard jagħtik dan:

LOG: stqarrija: DO $$
BEGIN
EŻEŻEWĠA 'ĦLOQ importazzjoni TABELLA' || 'ant_table(id int)';
TMIEM$$;

Jidher li s-sejba tat-tabella ta 'interess tista' teħtieġ xi għarfien tal-kodiċi f'każijiet fejn it-tabelli jinħolqu b'mod dinamiku.

Dan mhux ideali, peress li jkun preferibbli li sempliċement tfittex bl-isem tat-tabella.

Dan huwa fejn pgAudit jiġi utli.

Għall-istess input, se tipproduċi din l-output fil-ġurnal:

VERIFIKA: SESSION,33,1,FUNZJONI,DO,,,"DO $$
BEGIN
EŻEŻEWĠA 'ĦLOQ importazzjoni TABELLA' || 'ant_table(id int)';
TMIEM$$;"
VERIFIKA: SESSION,33,2,DDL,OĦLOQ TABELLA,TABLE,public.important_table,OĦLOQ TABLE important_table (id INT)

Mhux biss il-blokk DO huwa illoggjat, iżda wkoll it-test sħiħ tal-OĦLOQ TABELLA b'tip ta 'dikjarazzjoni, tip ta' oġġett, u isem sħiħ, li jagħmel it-tiftix aktar faċli.

Meta tilloggja dikjarazzjonijiet SELECT u DML, pgAudit jista 'jiġi kkonfigurat biex jirreġistra dħul separat għal kull relazzjoni referenzjata fid-dikjarazzjoni.

L-ebda parsing mhu meħtieġ biex jinstabu d-dikjarazzjonijiet kollha li jmissu tabella partikolari (*) ».

Dan kif se jaffettwa l-prestazzjoni tad-DBMS?

Ejja nwettqu testijiet b'verifika sħiħa attivata u naraw x'jiġri mill-prestazzjoni ta' PostgreSQL. Ejja nippermettu logging massimu tad-database għall-parametri kollha.

Aħna nibdlu kważi xejn fil-fajl tal-konfigurazzjoni, l-iktar ħaġa importanti hija li tixgħel il-mod debug5 biex tikseb l-informazzjoni massima.

postgresql.conf

log_destination = 'stderr'
logging_collector = fuq
log_truncate_on_rotation = fuq
log_rotation_age = 1d
log_rotation_size = 10MB
log_min_messages = debug5
log_min_error_statement = debug5
log_min_duration_statement = 0
debug_print_parse = fuq
debug_print_rewritten = fuq
debug_print_plan = fuq
debug_pretty_print = fuq
log_checkpoints = fuq
log_connections = fuq
log_disconnections = fuq
log_duration = fuq
log_hostname = fuq
log_lock_wait = mixgħula
log_replication_commands = fuq
log_temp_files = 0
log_timezone = 'Ewropa/Moska'

Fuq DBMS PostgreSQL b'parametri ta '1 CPU, 2,8 GHz, 2 GB RAM, 40 GB HDD, aħna nwettqu tliet testijiet tat-tagħbija bl-użu tal-kmandi:

$ pgbench -p 3389 -U postgres -i -s 150 benchmark
$ pgbench -p 3389 -U postgres -c 50 -j 2 -P 60 -T 600 benchmark
$ pgbench -p 3389 -U postgres -c 150 -j 2 -P 60 -T 600 benchmark

Riżultati tat-test:

Ebda qtugħ
Bil-qtugħ tas-siġar

Ħin totali tal-mili tad-database
43,74 sek
53,23 sek

RAM
24%
40%

CPU
72%
91%

Test 1 (50 konnessjoni)

Numru ta' tranżazzjonijiet f'10 minuti
74169
32445

Transazzjonijiet/sek
123
54

Latenza Medja
405 ms
925 ms

Test 2 (150 konnessjoni b'100 possibbli)

Numru ta' tranżazzjonijiet f'10 minuti
81727
31429

Transazzjonijiet/sek
136
52

Latenza Medja
550 ms
1432 ms

Dwar daqsijiet

Daqs tad-DB
2251 MB
2262 MB

Daqs tad-database log
0 MB
4587 MB

Bottom line: verifika sħiħa mhix tajba ħafna. Id-data mill-awditjar se tkun kbira daqs id-data fid-database nnifisha, jew saħansitra aktar. L-ammont ta 'qtugħ li jiġi ġġenerat meta taħdem ma' DBMS hija problema komuni fil-produzzjoni.

Ejja nħarsu lejn parametri oħra:

  • Il-veloċità ma tinbidilx ħafna: mingħajr qtugħ - 43,74 sekondi, bil-qtugħ - 53,23 sekondi.
  • Il-prestazzjoni tar-RAM u tas-CPU se tbati minħabba li għandek bżonn tiġġenera fajl tal-verifika. Dan huwa notevoli wkoll fil-produttività.

Hekk kif in-numru ta 'konnessjonijiet jiżdied, naturalment, il-prestazzjoni se tiddeterjora ftit.

F'korporazzjonijiet b'awditjar huwa saħansitra aktar diffiċli:

  • hemm ħafna dejta;
  • l-awditjar huwa meħtieġ mhux biss permezz tas-syslog fis-SIEM, iżda wkoll fil-fajls: jekk jiġri xi ħaġa lil syslog, għandu jkun hemm fajl qrib id-database li fiha tiġi ssejvjata d-dejta;
  • hija meħtieġa xkaffa separata għall-awditjar sabiex ma jinħelax id-diski I/O, peress li jieħu ħafna spazju;
  • Jiġri li l-impjegati tas-sigurtà tal-informazzjoni jeħtieġu standards GOST kullimkien, jeħtieġu identifikazzjoni tal-istat.

Restrizzjoni tal-aċċess għad-dejta

Ejja nħarsu lejn it-teknoloġiji li jintużaw biex jipproteġu d-dejta u jaċċessawha f'DBMSs kummerċjali u sors miftuħ.

X'tista' tuża ġeneralment:

  1. Encryption u offuskazzjoni ta 'proċeduri u funzjonijiet (Wrapping) - jiġifieri, għodod u utilitajiet separati li jagħmlu kodiċi li jinqara ma jinqarax. Veru, allura la tista 'tiġi mibdula u lanqas refactored lura. Dan l-approċċ kultant huwa meħtieġ mill-inqas fuq in-naħa tad-DBMS - il-loġika tar-restrizzjonijiet tal-liċenzja jew il-loġika tal-awtorizzazzjoni hija kkodifikata preċiżament fil-livell tal-proċedura u l-funzjoni.
  2. Il-limitazzjoni tal-viżibilità tad-dejta b'ringieli (RLS) hija meta utenti differenti jaraw tabella waħda, iżda kompożizzjoni differenti ta 'ringieli fiha, jiġifieri, xi ħaġa ma tistax tintwera lil xi ħadd fil-livell ta' ringiela.
  3. L-editjar tad-dejta murija (Masking) huwa meta l-utenti f'kolonna waħda tat-tabella jaraw jew data jew asterisks biss, jiġifieri, għal xi utenti l-informazzjoni tingħalaq. It-teknoloġija tiddetermina liema utent jintwera liema bbażat fuq il-livell ta 'aċċess tagħhom.
  4. Sigurtà DBA/Applikazzjoni Il-kontroll tal-aċċess DBA/DBA huwa, pjuttost, dwar ir-restrizzjoni tal-aċċess għad-DBMS innifsu, jiġifieri, l-impjegati tas-sigurtà tal-informazzjoni jistgħu jiġu separati mill-amministraturi tad-databases u mill-amministraturi tal-applikazzjoni. Hemm ftit teknoloġiji bħal dawn f'sors miftuħ, iżda hemm ħafna minnhom f'DBMSs kummerċjali. Huma meħtieġa meta jkun hemm ħafna utenti b'aċċess għas-servers infushom.
  5. Restrizzjoni tal-aċċess għall-fajls fil-livell tas-sistema tal-fajls. Tista' tagħti drittijiet u privileġġi ta' aċċess għad-direttorji sabiex kull amministratur ikollu aċċess biss għad-dejta meħtieġa.
  6. Aċċess obbligatorju u kklerjar tal-memorja - dawn it-teknoloġiji rarament jintużaw.
  7. Encryption minn tarf sa tarf direttament mid-DBMS hija encryption fuq in-naħa tal-klijent b'ġestjoni taċ-ċwievet fuq in-naħa tas-server.
  8. Encryption tad-data. Pereżempju, il-kriptaġġ kolonni huwa meta tuża mekkaniżmu li jikkripta kolonna waħda tad-database.

Dan kif jaffettwa l-prestazzjoni tad-DBMS?

Ejja nħarsu lejn l-eżempju ta 'encryption columnar f'PostgreSQL. Hemm modulu pgcrypto, jippermettilek taħżen oqsma magħżula f'forma kriptata. Dan huwa utli meta xi dejta biss tkun ta' valur. Biex taqra l-oqsma encrypted, il-klijent jittrasmetti ċavetta ta 'decryption, is-server jiddeċifra d-data u jirritornaha lill-klijent. Mingħajr iċ-ċavetta, ħadd ma jista 'jagħmel xejn bid-dejta tiegħek.

Ejja nittestjaw b'pgcrypto. Ejja noħolqu tabella b'dejta kriptata u dejta regolari. Hawn taħt huma l-kmandi għall-ħolqien ta 'tabelli, fl-ewwel linja hemm kmand utli - toħloq l-estensjoni nnifisha bir-reġistrazzjoni DBMS:

CREATE EXTENSION pgcrypto;
CREATE TABLE t1 (id integer, text1 text, text2 text);
CREATE TABLE t2 (id integer, text1 bytea, text2 bytea);
INSERT INTO t1 (id, text1, text2)
VALUES (generate_series(1,10000000), generate_series(1,10000000)::text, generate_series(1,10000000)::text);
INSERT INTO t2 (id, text1, text2) VALUES (
generate_series(1,10000000),
encrypt(cast(generate_series(1,10000000) AS text)::bytea, 'key'::bytea, 'bf'),
encrypt(cast(generate_series(1,10000000) AS text)::bytea, 'key'::bytea, 'bf'));

Sussegwentement, ejja nippruvaw nagħmlu kampjun tad-dejta minn kull tabella u nħarsu lejn il-ħinijiet tal-eżekuzzjoni.

Għażla minn tabella mingħajr funzjoni ta 'encryption:

psql -c "timing" -c "select * from t1 limit 1000;" "host=192.168.220.129 dbname=taskdb
user=postgres sslmode=disable" > 1.txt

L-istopwatch huwa mixgħul.

  id | test1 | test2
——+——-+——-
1 | 1 | 1
2 | 2 | 2
3 | 3 | 3
...
997 | 997 | 997
998 | 998 | 998
999 | 999 | 999
1000 | 1000 | 1000
(1000 linja)

Ħin: 1,386 ms

Għażla minn tabella b'funzjoni ta' kriptaġġ:

psql -c "timing" -c "select id, decrypt(text1, 'key'::bytea, 'bf'),
decrypt(text2, 'key'::bytea, 'bf') from t2 limit 1000;"
"host=192.168.220.129 dbname=taskdb user=postgres sslmode=disable" > 2.txt

L-istopwatch huwa mixgħul.

  id | decrypt | decrypt
——+—————+————
1 | x31 | x31
2 | x32 | x32
3 | x33 | x33
...
999 | x393939 | x393939
1000 | x31303030 | x31303030
(1000 linja)

Ħin: 50,203 ms

Ir-riżultati tat-test:

 
Ebda encryption
Pgcrypto (decrypto)

Kampjun 1000 ringiela
1,386 ms
50,203 ms

CPU
15%
35%

RAM
 
+% 5

Il-kriptaġġ għandu impatt kbir fuq il-prestazzjoni. Wieħed jista 'jara li ż-żmien żdied, peress li l-operazzjonijiet ta' deċifrar ta 'dejta kodifikata (u d-deċifrar ġeneralment ikun għadu mgeżwer fil-loġika tiegħek) jeħtieġu riżorsi sinifikanti. Jiġifieri, l-idea li jiġu encrypted il-kolonni kollha li jkun fihom xi dejta hija mimlija bi tnaqqis fil-prestazzjoni.

Madankollu, il-kriptaġġ mhuwiex bulit tal-fidda li jsolvi l-problemi kollha. Id-dejta decrypted u ċ-ċavetta tad-decryption matul il-proċess tad-decrypting u t-trażmissjoni tad-dejta jinsabu fuq is-server. Għalhekk, iċ-ċwievet jistgħu jiġu interċettati minn xi ħadd li għandu aċċess sħiħ għas-server tad-database, bħal amministratur tas-sistema.

Meta jkun hemm ċavetta waħda għall-kolonna kollha għall-utenti kollha (anke jekk mhux għal kulħadd, iżda għal klijenti ta 'sett limitat), dan mhux dejjem ikun tajjeb u korrett. Huwa għalhekk li bdew jagħmlu encryption end-to-end, fid-DBMS bdew jikkunsidraw għażliet għall-encrypting tad-data fuq in-naħa tal-klijent u s-server, u dehru dawk l-istess ħażniet tal-kaxxa-forti taċ-ċavetta - prodotti separati li jipprovdu ġestjoni taċ-ċavetta fuq id-DBMS naħa.

Sigurtà u DBMS: dak li għandek bżonn tiftakar meta tagħżel għodod tas-sigurtà
Eżempju ta 'kriptaġġ bħal dan f'MongoDB

Karatteristiċi ta' sigurtà f'DBMS kummerċjali u open source

Funzjonijiet
Tip
Politika tal-Password
Verifika
Protezzjoni tal-kodiċi sors ta 'proċeduri u funzjonijiet
RLS
Encryption

Oracle
kummerċjali
+
+
+
+
+

MsSql
kummerċjali
+
+
+
+
+

Jatoba
kummerċjali
+
+
+
+
estensjonijiet

PostgreSQL
B'xejn
estensjonijiet
estensjonijiet
-
+
estensjonijiet

MongoDb
B'xejn
-
+
-
-
Disponibbli f'MongoDB Enterprise biss

It-tabella hija 'l bogħod milli kompluta, iżda s-sitwazzjoni hija din: fil-prodotti kummerċjali, il-problemi tas-sigurtà ġew solvuti għal żmien twil, f'sors miftuħ, bħala regola, jintużaw xi tip ta' add-ons għas-sigurtà, ħafna funzjonijiet huma neqsin , kultant ikollok iżżid xi ħaġa. Pereżempju, politiki tal-password - PostgreSQL għandu ħafna estensjonijiet differenti (1, 2, 3, 4, 5), li jimplimentaw politiki dwar il-password, iżda, fl-opinjoni tiegħi, l-ebda waħda minnhom ma tkopri l-ħtiġijiet kollha tas-segment korporattiv domestiku.

X'għandek tagħmel jekk m'għandekx dak li għandek bżonn imkien? Pereżempju, trid tuża DBMS speċifiku li m'għandux il-funzjonijiet li jeħtieġ il-klijent.

Imbagħad tista 'tuża soluzzjonijiet ta' partijiet terzi li jaħdmu ma 'DBMSs differenti, pereżempju, Crypto DB jew Garda DB. Jekk qed nitkellmu dwar soluzzjonijiet mis-segment domestiku, allura jafu dwar GOSTs aħjar milli f'sors miftuħ.

It-tieni għażla hija li tikteb dak li għandek bżonn lilek innifsek, timplimenta aċċess għad-dejta u encryption fl-applikazzjoni fil-livell tal-proċedura. Veru, se jkun aktar diffiċli bil-GOST. Iżda b'mod ġenerali, tista 'taħbi d-dejta kif meħtieġ, poġġiha f'DBMS, imbagħad tirkupraha u tiddeċifraha kif meħtieġ, eżatt fil-livell tal-applikazzjoni. Fl-istess ħin, immedjatament aħseb dwar kif se tipproteġi dawn l-algoritmi fl-applikazzjoni. Fl-opinjoni tagħna, dan għandu jsir fil-livell tad-DBMS, għax jaħdem aktar malajr.

Dan ir-rapport ġie ppreżentat għall-ewwel darba fi @Databases Meetup minn Mail.ru Cloud Solutions. Ħares video wirjiet oħra u abbona għall-avviżi tal-avvenimenti fuq Telegram Madwar Kubernetes fil-Grupp Mail.ru.

X'iktar li taqra fuq is-suġġett:

  1. Aktar minn Ceph: MCS cloud block storage.
  2. Kif tagħżel database għal proġett sabiex ma jkollokx għalfejn terġa' tagħżel.

Sors: www.habr.com

Żid kumment