Kaip valdyti paslaptis naudojant AWS paslapčių tvarkyklę ir RDS?

Kaip Valdyti Paslaptis Naudojant Aws Paslapciu Tvarkykle Ir Rds



„Amazon Relational Database“ yra viena iš reliacinės duomenų bazės paslaugų, kurias lengviau ir paprasčiau valdyti bei vykdyti sudėtingas užklausas. Pagal SQL užklausų sintaksę ši AWS paslauga yra greitesnė nei tradicinės duomenų bazės ir automatiškai keičia duomenų bazę pagal programos reikalavimus. Naudojant AWS RDS, nereikia pasirinktinai nustatyti aparatinės įrangos arba konfigūruoti programinę įrangą, kad būtų galima vykdyti užklausas.

Šiame straipsnyje parodyta, kaip valdyti paslaptis naudojant AWS paslapčių tvarkyklę ir RDS.

Kas yra slaptasis vadybininkas?

Ekspertai ir žmonės visame pasaulyje taip pat iškėlė grėsmes saugumui ir susirūpinimą dėl privatumo. Norėdami apsaugoti savo skaitmenines paslaptis, tokias kaip duomenų bazės kredencialai, API ir prieigos raktai, AWS Secret Manager yra jūsų įrankis, skirtas šiam tikslui.







AWS Secret Manager padeda įmonėms ir organizacijoms apsaugoti savo išteklius ir paslaugas nuo kenkėjiškų ketinimų ir kibernetinių atakų siekiant užgrobti arba pavogti neskelbtinus duomenis. Ši paslauga papildo išteklių saugos sluoksnį ir leidžia lengvai keisti ir valdyti paslaptis.



Kaip tvarkyti paslaptis naudojant AWS Secret Manager ir RDS?

Kiekvieną kartą, kai vartotojas sukonfigūruoja RDS klasterį, jis reikalauja informacijos apie grupės regioną, vartotojo vardą ir slaptažodį ir identifikuoja jį naudodamas unikalų klasterio identifikatorių. Integravus RDS su slaptuoju tvarkytuvu, galėsite apsaugoti savo RDS kredencialus ir juos atitinkamai valdyti.



Naudodami paslapčių tvarkyklę galite apibrėžti šių paslapčių gyvavimo ciklą ir integruoti jas su kitais ištekliais. Šiame straipsnyje mes įtrauksime AWS Secret Manager su Lambda funkcija į mūsų RDS klasterį.





Žemiau pateikiami keli žingsniai šiam tikslui:

1 veiksmas: sukurkite RDS klasterį

Slaptasis tvarkytuvas plačiai naudojamas duomenų bazės kredencialams apsaugoti. Taigi, pirmas žingsnis yra sukurti RDS klasterį. Šiuo tikslu skaitykite šį straipsnį: „ Kaip sukurti RDS klasterį naudojant AWS? “. Mes turime RDS klasterį ir veikia:



2 veiksmas: AWS slaptasis tvarkytuvas

AWS valdymo pulte ieškokite ir pasirinkite „ Paslapčių vadybininkas “:

Slaptųjų tvarkyklių sąsajoje spustelėkite „Išsaugokite naują paslaptį“ mygtukas:

Viduje Slaptas tipas , pasirinkite „Amazon RDS duomenų bazės kredencialai“ parinktis, kurią konfigūruojame RDS:

Kitas yra Įgaliojimai skyrius. Šiame skyriuje pateikite Vartotojo vardas ir Slaptažodis ką tik sukurtai RDS duomenų bazei:

Viduje Šifravimo raktas skiltyje, vartotojas gali naudoti numatytąjį, pateiktą AWS slaptojo tvarkyklės, arba sukurti naują spustelėdamas „Pridėti naują raktą“ variantas. Panašiai ir Duomenų bazė skyrių, pasirinkite „DB pavyzdys“ kurį sukūrėte ir paspauskite 'Kitas' mygtukas:

Pateikite unikalų pavadinimą 'Paslaptis' tai padės mums vėliau ją atpažinti. Aprašymas neprivalomas. Tačiau vartotojas taip pat gali pateikti pasirinktinį aprašymą čia:

Sąsajoje , Secret Manager taip pat suteikia mums galimybę atkartoti paslaptį. Norėdami tai padaryti, pasirinkite regioną, kuriame norite sukurti replikaciją. Šioje demonstracijoje nereikalaujame jokio replikavimo, todėl likusius nustatymus palikdami numatytuosius, bakstelėkite 'Kitas' mygtukas:

Palikdami numatytuosius nustatymus, dabar peržiūrime ir redaguojame informaciją. Patvirtinę pateiktą informaciją, spustelėkite 'Parduotuvė' mygtuką, kad sukurtumėte ir išsaugotumėte paslaptį:

Štai paslaptis sėkmingai sukurta . Spustelėkite „ Paslapties vardas “ norėdami peržiūrėti jo konfigūracijas:

Slinkdami žemyn sąsaja, turėsime kodo pavyzdžio skyrių. Šiame skyriuje kodas yra generuojamas Slaptas vadovas. Nukopijuokite šį kodą, nes jis bus naudojamas Lambda funkcija:

// Naudokite šį kodo fragmentą in jūsų programa.
// Jei tau reikia daugiau informacijos apie konfigūracijas arba pavyzdinio kodo įdiegimą, apsilankykite AWS dokumentuose:
// https: // docs.aws.amazon.com / sdk-for-javascript / v3 / kūrėjo vadovas / pradžia.html

importuoti {
SecretsManagerClient,
GetSecretValueCommand,
} „@aws-sdk/client-secrets-manager“ ;

const slaptas_vardas = 'mysecret1/sh' ;

const klientas = naujas SecretsManagerClient ( {
regionas: 'ap-southeast-1' ,
} ) ;

leisti atsakas;

bandyti {
atsakymas = laukti kliento.siųsti (
nauja GetSecretValueCommand ( {
SecretId: slaptas_vardas,
VersionStage: „AWSCURRENT“ , // VersionStage numatytasis AWSCURRENT jeigu nepatikslinta
} )
) ;
} sugauti ( klaida ) {
// Išmestų išimčių sąrašą žr
// https: // docs.aws.amazon.com / paslapčių tvarkytojas / naujausias / apireferencija /
API_GetSecretValue.html
mesti klaida;
}

const secret = atsakymas.SecretString;

// Jūsų kodas bus čia

3 veiksmas: sukurkite lambda funkciją

„Lambda Function“ sąsajoje spustelėkite „ Sukurkite funkciją “ mygtukas:

Spustelėkite ant „Autorius nuo nulio“ parinktis iš „Sukurti funkciją“ sąsaja:

Toliau judame link 'Pagrindinė informacija' skyrius. Pateikite funkcijos pavadinimą „Funkcijos pavadinimas“ lauką ir tada pateikite „Vykdymo laikas“ aplinką. Čia mes pasirinkome „Node.js 16. x“ lauke Vykdymo laikas:

Spustelėkite ant „Sukurti funkciją“ mygtukas:

Čia įklijavome kodą, kurį sugeneravo Slaptas vadovas . Įklijavę kodą, spustelėkite „Įdiegti“ mygtukas:

Įdiegę visus pakeitimus, spustelėkite 'Konfigūracija' skirtuką, kad suteiktų leidimus Secret Manager:

Spustelėkite ant „Leidimai“ parinktis iš „Konfigūracijos“ skirtuką. Tai parodys „ Vykdymo vaidmuo“ sąsają ir spustelėkite toliau esančią nuorodą „Vaidmens vardas“ laukas:

Viduje „Leidimų politika“ skyrių, spustelėkite „Pridėti leidimus“ mygtuką. Išskleidžiamajame meniu spustelėkite „Pridėti politiką“ variantas:

Viduje „Kita leidimų politika“ skyrių, ieškokite ir pasirinkite „SecretsManagerReadWrite“ variantas. Paspauskite „Pridėti leidimus“ mygtukas:

Čia politika buvo sėkmingai pridėta ir sukonfigūruota:

4 veiksmas: patikrinkite slaptą prieigą

Dabar eikite į Lambda prietaisų skydelio sąsają. Spustelėkite ant 'Bandymas' skirtukas:

Kitoje sąsajoje nurodykite bandomojo įvykio pavadinimą „Renginio pavadinimas“ lauke. Spustelėkite ant 'Sutaupyti' mygtuką, kad pritaikytumėte konfigūracijas:

Čia testas buvo sėkmingai sukonfigūruotas. Spustelėkite ant 'Bandymas' mygtukas:

Čia mes spustelėsime 'Bandymas' mygtuką dar kartą ir bus rodoma ši išvestis:

Tai viskas iš šio vadovo.

Išvada

Norėdami tvarkyti paslaptis paslapčių tvarkyklėje, sukurkite RDS klasterį, pridėkite jį prie Secret Manager ir paleiskite tą kodą sukonfigūruotoje Lambda funkcijoje. Lambda funkcija nustatys, ar paslaptį galima pasiekti, ar ne, vykdant joje esantį kodą, kuriame yra RDS klasterio specifikacija. Šis straipsnis yra žingsnis po žingsnio vadovas, kaip valdyti paslaptis naudojant AWS Secret Manager ir RDS.