Kuinka hallita salaisuuksia AWS Secrets Managerin ja RDS:n avulla?

Kuinka Hallita Salaisuuksia Aws Secrets Managerin Ja Rds N Avulla



Amazon Relational Database on yksi relaatiotietokantapalveluista, joiden käyttö ja monimutkaisten kyselyjen suorittaminen on helpompaa ja yksinkertaisempaa. SQL-kyselyiden syntaksin mukaisesti tämä AWS-palvelu on nopeampi kuin perinteiset tietokannat ja skaalaa tietokannan automaattisesti sovelluksen vaatimusten mukaan. AWS RDS poistaa tarpeen mukauttaa laitteiston asetuksia tai määrittää ohjelmistoja kyselyiden suorittamiseksi.

Tämä artikkeli näyttää, kuinka salaisuuksia voidaan hallita AWS Secrets Managerin ja RDS:n avulla.

Mikä on salainen johtaja?

Asiantuntijat ja ihmiset ympäri maailmaa ovat myös tuoneet esille turvallisuusuhkia ja yksityisyyttä koskevia huolenaiheita. Suojataksesi digitaalisia salaisuuksiasi, kuten tietokannan valtuustietoja, API:ta ja tokeneja, AWS Secret Manager on sinun työkalusi tähän tarkoitukseen.







AWS Secret Manager auttaa yrityksiä ja organisaatioita suojaamaan resurssejaan ja palveluitaan haitallisilta aikeilta ja kyberhyökkäyksiltä arkaluonteisten tietojen kaappaamiseksi tai varastamiseksi. Tämä palvelu lisää resursseihin ylimääräisen suojauskerroksen ja mahdollistaa salaisuuksien skaalauksen ja hallinnan helposti.



Kuinka hallita salaisuuksia AWS Secret Managerin ja RDS:n avulla?

Aina kun käyttäjä määrittää RDS-klusterin, se vaatii tietoja klusterin alueesta, käyttäjätunnuksesta ja salasanasta ja tunnistaa sen käyttämällä klusterin yksilöllistä tunnistetta. Integroimalla RDS:n Secret Manageriin voit suojata RDS-tunnistetietosi ja hallita niitä vastaavasti.



Käyttämällä Secret Manageria voit määrittää näiden salaisuuksien elinkaaren ja integroida ne muihin resursseihin. Tässä artikkelissa lisäämme AWS Secret Managerin Lambda-toiminnolla RDS-klusteriimme.





Alla on joitain vaiheita tätä tarkoitusta varten:

Vaihe 1: Luo RDS-klusteri

Secret Manageria käytetään laajalti tietokannan valtuustietojen suojaamiseen. Joten ensimmäinen askel on luoda RDS-klusteri. Katso tätä tarkoitusta varten tämä artikkeli: ' Kuinka luoda RDS-klusteri AWS:ssä? ”. Meillä on RDS-klusteri käytössä:



Vaihe 2: AWS Secret Manager

Hae AWS-hallintakonsolissa ja valitse ' Secrets Manager ”:

Napsauta Secret Manager -käyttöliittymässä 'Tallenna uusi salaisuus' painike:

Vuonna Salainen tyyppi , Valitse 'Amazon RDS-tietokannan tunnistetiedot' vaihtoehto, kun määritämme sitä RDS:lle:

Seuraava on Valtuustiedot osio. Anna tässä osiossa Käyttäjätunnus ja Salasana juuri luomamme RDS-tietokannan osalta:

Vuonna Salausavain -osiossa, käyttäjä voi joko käyttää AWS Secret Managerin tarjoamaa oletusarvoa tai luoda uuden napsauttamalla 'Lisää uusi avain' vaihtoehto. Samoin vuonna Tietokanta -osiosta, valitse 'DB-esiintymä' jonka olet luonut ja paina 'Seuraava' painike:

Anna yksilöllinen nimi 'Salaisuus' joka auttaa meitä tunnistamaan sen myöhemmin. Kuvaus on valinnainen. Käyttäjä voi kuitenkin myös antaa mukautetun kuvauksen täällä:

Käyttöliittymässä , Secret Manager tarjoaa meille myös mahdollisuuden kopioida salaisuus. Valitse tätä varten alue, jolle haluat luoda replikaation. Tässä esittelyssä emme vaadi replikointia, joten pitämällä loput asetukset oletusasetuksina napauta 'Seuraava' painike:

Säilyttämällä oletusasetukset tarkistamme ja muokkaamme nyt tietoja. Kun olet vahvistanut annetut tiedot, napsauta 'Kauppa' -painiketta salaisuuden luomiseksi ja tallentamiseksi:

Tässä salaisuus on onnistuneesti luotu . Klikkaa ' Salaisuuden nimi ' nähdäksesi sen kokoonpanot:

Vieritä alas käyttöliittymää, meillä on Mallikoodi-osio. Tässä osiossa koodi luo Salainen johtaja. Kopioi tämä koodi, koska sitä käytetään Lambda toiminto:

// Käytä tätä koodinpätkää sisään sovelluksesi.
// Jos tarvitset lisää Lisätietoja määrityksistä tai mallikoodin käyttöönotosta on AWS-dokumenteissa:
// https: // docs.aws.amazon.com / sdk-javascriptille / v3 / kehittäjä-opas / aloitus.html

tuonti {
SecretsManagerClient,
GetSecretValueCommand,
} alkaen '@aws-sdk/client-secrets-manager' ;

const salainen_nimi = 'mysecret1/sh' ;

const asiakas = uusi SecretsManagerClient ( {
alue: 'ap-southeast-1' ,
} ) ;

antaa vastaus;

yrittää {
vastaus = odota client.send (
uusi GetSecretValueCommand ( {
SecretId: Secret_name,
VersionStage: 'AWSCURRENT' , // VersionStagen oletusarvo on AWSCURRENT jos määrittelemätön
} )
) ;
} ottaa kiinni ( virhe ) {
// Luettelo heitetyistä poikkeuksista on kohdassa
// https: // docs.aws.amazon.com / salaisuuksien johtaja / Viimeisin / apireferenssi /
API_GetSecretValue.html
heittovirhe;
}

const secret = vastaus.SecretString;

// Koodisi menee tänne

Vaihe 3: Luo lambda-funktio

Napsauta Lambda Function -käyttöliittymässä ' Luo funktio ”-painike:

Klikkaa 'Kirjoittaja tyhjästä' vaihtoehto kohteesta 'Luo toiminto' käyttöliittymä:

Seuraavaksi siirrytään kohti 'Perustiedot' osio. Anna funktion nimi 'Toiminnon nimi' kenttä ja anna sitten 'Ajoaika' ympäristöön. Tässä olemme valinneet 'Node.js 16. x' Runtime-kentässä:

Klikkaa 'Luo toiminto' painike:

Tänne olemme liittäneet koodin, jonka on luonut Salainen johtaja . Kun olet liittänyt koodin, napsauta 'Ota käyttöön' painike:

Kun olet ottanut kaikki muutokset käyttöön, napsauta 'Asetukset' välilehti salliaksesi luvat Secret Managerille:

Klikkaa 'Luvat' vaihtoehto kohteesta 'Asetukset' -välilehti. Tämä näyttää ' Toteutusrooli' käyttöliittymä ja napsauta alla olevaa linkkiä 'Roolinimi' ala:

Vuonna 'Käyttöoikeuskäytännöt' -osiosta, napsauta 'Lisää käyttöoikeuksia' -painiketta. Napsauta avattavasta valikosta 'Liitä käytännöt' vaihtoehto:

Vuonna 'Muut käyttöoikeuskäytännöt' -osio, etsi ja valitse 'SecretsManagerReadWrite' vaihtoehto. Lyö 'Lisää käyttöoikeuksia' painike:

Tässä käytäntö on onnistuneesti liitetty ja määritetty:

Vaihe 4: Vahvista salainen käyttöoikeus

Siirry nyt Lambda Dashboard -liittymään. Klikkaa 'Testata' välilehti:

Anna seuraavassa käyttöliittymässä testitapahtumalle nimi 'Tapahtuman nimi' ala. Klikkaa 'Tallentaa' painiketta konfiguraatioiden käyttöönottamiseksi:

Tässä testi on määritetty onnistuneesti. Klikkaa 'Testata' painike:

Tässä klikkaamme 'Testata' -painiketta uudelleen, ja se näyttää seuraavan tulosteen:

Siinä kaikki tästä oppaasta.

Johtopäätös

Jos haluat hallita salaisuuksia Secret Managerissa, luo RDS-klusteri, liitä se Secret Manageriin ja suorita sitten kyseinen koodi määritetyssä Lambda-funktiossa. Lambda-toiminto määrittää, voidaanko salaisuuteen päästä vai ei suorittamalla siinä koodi, joka sisältää RDS-klusterin määrittelyn. Tämä artikkeli on vaiheittainen opas salaisuuksien hallintaan AWS Secret Managerin ja RDS:n avulla.