Beveiligingsproblemen bij het laden van armaturen

Ik moet fixtures in het systeem laden wanneer een nieuwe VM is opgestart. Ik heb MongoDB en Postgres gedumpt. Maar ik kan niet voor de pc zitten als er een nieuwe machine in de buurt is. Ik wil gewoon een opdracht kunnen "uitgeven" of het script doet het automatisch.

Maar een commando zoals pg_dump om PostgreSQL te dumpen vereist een wachtwoord. Het probleem is dat het script dat ik gebruik om deze armaturen te implementeren, onder versiebeheer moet staan. Het bestand dat dit wachtwoord bevat (als dat de enige manier is om te automatiseren) zal niet worden vastgelegd. Als het moet worden vastgelegd, is de repository voor implementatie beperkt voor alleen interne ontwikkelaars.

Mijn vraag is ... wat beschouw je als een goede gewoonte in deze situatie? Ik denk aan het gebruik van Python's Popen om deze commando's uit te geven.

Bedankt.

Ik kan het ook in de cacheserver plaatsen ... maar ik weet niet zeker of dit de enige "betere" manier is ...

1

1 antwoord

U moet de gebruiker die de fixture laadt de rechten geven om in de database te schrijven, ongeacht op welke manier u de gegevens gaat laden.

Met Postgres kunt u inlogrechten opgeven zonder wachtwoord voor specifieke gebruikers en het probleem van een gedeeld wachtwoord elimineren of kunt u het wachtwoord opslaan in het pgpass-bestand in de basismap.

Persoonlijk vind ik stof een heel leuk hulpmiddel om uit te voeren, in dit specifieke geval zal ik het gebruiken om verbinding te maken met de externe machine en een psql -f 'dump_data.sql' -1 commando uit te geven.

0
toegevoegd
Ah. Ja. Ik heb eigenlijk wel fab voor andere dingen. Wat doet -1? Is het beter dan pg_restore ? En zonder wachtwoord? Is dat niet een groot beveiligingsprobleem? Bedankt.
toegevoegd de auteur CppLearner, de bron
-1 verpakt het in een transactie. Sprekend over beveiliging, moet je nog steeds kunnen inloggen als die gebruiker om een ​​query uit te kunnen sturen naar :) dat klinkt voor mij niet zo onveilig.
toegevoegd de auteur Tommaso Barbugli, de bron