Crioptachadh ann am MySQL: Master Key Rotation

Le dùil gun tòisich clàradh ùr airson a’ chùrsa "Stòr-dàta" tha sinn a’ leantainn air adhart a’ foillseachadh sreath de artaigilean mu chrioptachadh ann am MySQL.

Anns an artaigil mu dheireadh san t-sreath seo, bhruidhinn sinn mar a tha crioptachadh prìomh iuchair ag obair. An-diugh, stèidhichte air an eòlas a fhuair sinn na bu tràithe, leig dhuinn sùil a thoirt air cuairteachadh nam prìomh iuchraichean.

Tha cuairteachadh prìomh iuchrach a’ toirt a-steach a bhith a’ gineadh prìomh iuchair ùr agus ag ath-chrioptachadh na h-iuchraichean bùird (a tha air an stòradh anns na cinn-cinn bùird) leis an iuchair ùr seo.

Cuimhnichidh sinn cò ris a tha bann-cinn àite bùird crioptaichte coltach:

Crioptachadh ann am MySQL: Master Key Rotation

Bhon artaigil roimhe, tha fios againn gu bheil am frithealaiche a’ leughadh cinn-cinn gach àite bùird crioptaichte aig àm tòiseachaidh agus a’ cuimhneachadh air a’ phrìomh ID as motha. Mar eisimpleir ma tha trì bùird againn le PRÌOMHID = 3 agus aon bhòrd le PRÌOMHID = 4, an uairsin is e 4 an ID iuchrach as àirde. Canaidh sinn am PRÌOMH ID seo - MAX PRÌOMH ID.

Mar a tha cuairteachadh prìomh iuchair ag obair

1. Bidh an neach-cleachdaidh a 'dèanamh ALTER INNODB MASTER KEY.

2. Bidh am frithealaiche ag iarraidh air an iuchair prìomh iuchair ùr a chruthachadh leis an fhrithealaiche UUID agus PRÌOMHID co-ionann ri aon agus MAXPRÌOMHID. Mar sin gheibh sinn prìomh id id co-ionann ri INNODBPRÌOMH-UUID-(MAXPRÌOMHID + 1). Às deidh ginealach soirbheachail den phrìomh iuchair, thèid MAX KEY ID a mheudachadh le aon (ie MAXPRÌOMHID=MAXPRÌOMHID + 1).

3. Bidh am frithealaiche a’ sganadh a h-uile àite bùird a tha air a chrioptachadh leis a’ phrìomh iuchair, agus airson gach àite bùird:

  • crioptachadh an iuchair tablespace leis a’ phrìomh iuchair ùr;

  • ag ùrachadh an id prìomh chun an MAX ùrPRÌOMHID;

  • ma tha an UUID eadar-dhealaichte bhon fhrithealaiche UUID, an uairsin ùraich UUID an fhrithealaiche.

Mar a tha fios againn, tha am Master Key ID a chleachdar airson clàr a dhì-chrioptachadh air a dhèanamh suas de UUID agus PRÌOMH ID air a leughadh bhon cheann-cinn bùird. Is e na tha sinn a’ dèanamh a-nis ag ùrachadh an fhiosrachaidh seo ann am bann-cinn crioptachaidh àite-bùird gus am faigh am frithealaiche am prìomh iuchair cheart.

Ma tha bùird againn bho dhiofar àiteachan, leithid cùl-taic eadar-dhealaichte, faodaidh iad prìomh iuchraichean eadar-dhealaichte a chleachdadh. Feumar na prìomh iuchraichean sin uile fhaighinn air ais bhon stòr nuair a thòisicheas am frithealaiche. Faodaidh seo tòiseachadh an fhrithealaiche a dhèanamh nas slaodaiche, gu h-àraidh ma thèid stòr iuchrach taobh an fhrithealaiche a chleachdadh. Le cuairteachadh prìomh iuchrach, bidh sinn ag ath-chrioptachadh iuchraichean bùird le aon phrìomh iuchair a tha an aon rud airson a h-uile àite bùird. Cha bu chòir don fhrithealaiche a-nis ach aon phrìomh iuchair fhaighinn aig àm tòiseachaidh.

Tha seo, gu dearbh, dìreach na taobh-bhuaidh tlachdmhor. Is e prìomh adhbhar prìomh chuairteachadh iuchrach ar frithealaiche a dhèanamh nas tèarainte. Ma thèid am prìomh iuchair a ghoid ann an dòigh air choireigin bhon chrùisg (mar eisimpleir, bhon Vault Server), tha e comasach prìomh iuchair ùr a ghineadh agus na h-iuchraichean bùird ath-chrioptachadh, a’ dèanamh dì-dhligheach air an iuchair a chaidh a ghoid. Tha sinn sàbhailte...cha mhòr.

Ann an artaigil roimhe, bhruidhinn mi air mar as urrainn do threas phàrtaidh a chleachdadh gus dàta a dhì-chrioptachadh aon uair ‘s gu bheil iuchair tablespace air a ghoid. Cho fad ‘s gu bheil cothrom air an diosc againn. Ma thèid am prìomh iuchair a ghoid agus gu bheil cothrom agad air an dàta crioptaichte, faodaidh tu am prìomh iuchair a chaidh a ghoid a chleachdadh gus an iuchair clàr-bùird a dhì-chrioptachadh agus an dàta dì-chrioptaichte fhaighinn. Mar a chì thu, chan eil cuairteachadh a ’phrìomh iuchair a’ cuideachadh sa chùis seo. Bidh sinn ag ath-chrioptachadh an iuchair tablespace leis a’ phrìomh iuchair ùr, ach tha an fhìor iuchair a thathas a’ cleachdadh gus an dàta a chrioptachadh / a dhì-chrioptachadh fhathast mar a tha e. Mar sin, faodaidh an “hacker” leantainn air adhart ga chleachdadh gus an dàta a dhì-chrioptachadh. Na bu thràithe thug mi sin an aire Percona am frithealaiche airson MySQL is urrainn dha fìor ath-chrioptachadh àite-bùird a dhèanamh, chan e dìreach ath-chrioptachadh iuchair tablespace sìmplidh. Canar snàithleanan crioptachaidh ris an fheart seo. Ach, tha an gnìomh seo fhathast deuchainneach an-dràsta.

Tha cuairteachadh prìomh iuchrach feumail nuair a thèid am prìomh iuchair a ghoid, ach chan eil dòigh ann dha neach-ionnsaigh a chleachdadh agus na h-iuchraichean bùird a dhì-chrioptachadh.

Luchdaich a-nuas an taisbeanadh airson saor gun chlàradh.

Leugh tuilleadh:

Source: www.habr.com