Gem legitimationsoplysninger ét sted

Gem nøgler, adgangskoder og tokens i det indbyggede nøglelager, eller forbind din hemmelighedsboks. Genbrug navngivne legitimationsoplysninger i job, hold hemmeligheder ude af kode, og opdater dem ved kilden.

Legitimationsoplysninger spredt over job, scripts og bærbare computere

Hver kopi skal sikres og opdateres. Deling af et job bør ikke betyde deling af dets hemmelige værdier.

I Git
I scripts
På bærbare computere

Gem legitimationsoplysninger én gang. Genbrug referencen

Gem nøglen i Semaphores nøglelager eller den tilsluttede hemmelighedsboks. Tilknyt den til jobbets ressourcer, og opdater den ved kilden.

Brug det indbyggede nøglelager, eller forbind din hemmelighedsboks

Gem legitimationsoplysninger separat fra koden. Genbrug navngivne nøgler på tværs af repositories, inventarer og job med den hemmelighedskilde, der passer til infrastrukturen.

Indbygget nøglelager

Gem SSH-nøgler, login/adgangskode-par og teksthemmeligheder i Semaphores krypterede nøglelager. Genbrug dem til Git-adgang, værtsforbindelser og Ansible Vault-adgangskoder.

HashiCorp Vault

Hent legitimation fra eksisterende Vault KV-hemmeligheder.

OpenBao

Brug OpenBao som kilde til genbrugelig legitimation.

AWS Secrets Manager

Forbind legitimation administreret i AWS Secrets Manager.

Azure Key Vault

Importer bokshemmeligheder til nøglelageret med hemmelighedssynkronisering.

Devolutions Server

Brug legitimation administreret i Devolutions Server.

CyberArk

Forbind CyberArk-administrerede hemmeligheder til automatisering.

Brug for en anden kilde? Hent legitimationsoplysninger fra servermiljøvariabler eller filer, synkroniser hemmeligheder fra boksen til nøglelageret, eller brug hemmelige værdier sammen med fælles konfiguration i variabelgrupper.

Opret, forbind og genbrug legitimationsoplysninger

Vælg, hvor jobbets legitimationsoplysninger kommer fra

Navngivne legitimationsoplysninger, som skabelonen refererer til ved navn

Nøglelageret indeholder de legitimationsoplysningstyper, operationen faktisk kræver: SSH-nøgler og login til administrerede værter, adgang til private Git-repositories, sudo-adgangskoder og Ansible Vault-adgangskoder. Skabelonen refererer til posten, så ingeniører konfigurerer og læser et navn, mens værdien holdes ude af repository og opgaveformular. Lokale værdier krypteres i databasen, når adgangsnøglekryptering er konfigureret. Dermed bliver konfigurationen og gendannelsesvejen en del af sikkerhedskopieringen frem for en valgfri indstilling.

Hent en værdi fra serveren ved kørsel

Miljø- og filkilder lader en nøglelagerpost læse værdien fra Semaphore-serveren, når en opgave skal bruge den, i stedet for at gemme en kopi i databasen. Brug denne vej, når en anden proces allerede skriver opdaterede legitimationsoplysninger på værten: udskift kilden, så henter næste opgave den nye værdi uden skabelonredigering. Semaphore-serveren opløser kilderne, også når en ekstern runner udfører opgaven, så filen behøver ikke findes på runneren. Filkilder følger den konfigurerede hemmelighedsmappe og det dokumenterede JSON-format; SSH- og loginposter bruger denne indpakning frem for en rå nøglefil.

Brug nøglelagerlegitimation i variabelgrupper

Variabelgrupper kombinerer fælles konfiguration med hemmelige værdier. Referer til gemt legitimation for et hemmeligt input frem for at kopiere det til hvert job. Send gruppen til Ansible, Terraform, OpenTofu eller et script med de variabelnavne, værktøjet forventer.

Forbind din eksisterende hemmelighedsadministrator

Referer til hemmeligheder fra HashiCorp Vault eller OpenBao med Pro. Enterprise tilføjer understøttede integrationer såsom AWS Secrets Manager, CyberArk og Devolutions Server. Gem hemmeligheden i det system, der ejer den, og brug den dokumenterede udbyderkonfiguration til at gøre den tilgængelig for automatiseringen.

Hvad eksekveringsvejen stadig kan udskrive

God lagring af en værdi styrer ikke, hvad koden gør med den. En playbook eller et script kan skrive en hemmelighed i output via en debugopgave, et kommandoargument eller et API-svar, og det er ikke garanteret, at enhver værdi fjernes fra opgaveloggen. Brug værktøjets egne muligheder, såsom Ansibles no_log, gennemgå fejloutput såvel som succesoutput, og betragt adgang til logge og eksport som adgang til deres indhold.

Brug kortlivet opgaveidentitet, hvor en tjeneste understøtter det

Opgave-JWT'er giver en signeret identitet til en enkelt eksekvering. En modtagende tjeneste kan validere udsteder, målgruppe og claims frem for at dele et langtidstoken med hvert job. Konfigurer tillidsforholdet på begge sider; almindelige SSH-nøgler, adgangskoder og boksreferencer er fortsat tilgængelige for systemer, der kræver dem.

FAQ

Hvad hører til i nøglelageret frem for repositoryet?

Brug navngiven nøglelagerlegitimation til private repositories, administrerede værter og Ansible Vault-adgangskoder. Gem automatiseringskode og ikke-følsom konfiguration i Git, mens skabelonen refererer til nødvendig legitimation. En reference gør genbrug og rotation lettere end indlejrede værdier i scripts. Det fjerner ikke behovet for at beskytte, hvem der kan redigere eksekverbar kode, da koden kører med den adgang, den får.

Er Ansible Vault det samme som HashiCorp Vault-hemmelighedslagring?

Nej. Ansible Vault beskytter krypteret Ansible-indhold; en opgaveskabelon kan bruge en Vault-adgangskode fra Semaphores nøglelager til at åbne det. HashiCorp Vault er en separat ekstern Pro-lagringsmulighed til nøglelagerhemmeligheder. Den optagede forhåndskontrol på siden viser Ansible Vault-adgangskodevejen, ikke en forbindelse til HashiCorp Vault. Vurder ekstern lagring separat med en midlertidig legitimationspost før driftsbrug.

Hvordan beskyttes lokalt gemte legitimationsoplysninger?

Lokale nøglelagerværdier bruger den konfigurerede kryptering af adgangsnøgler til databaselagring. Indstil og beskyt krypteringskonfigurationen korrekt, og medtag dens gendannelseskrav i sikkerhedskopieringsproceduren. Kryptering i hvile er én del af designet: autoriseret eksekvering skal stadig bruge legitimationsoplysningerne. Beskyt server, runtime, administratoradgang og logge frem for at betragte en krypteret databaseværdi som utilgængelig for al kode og alle ingeniører.

Hvilken komponent læser hemmeligheder fra miljøvariabler eller filer?

De dokumenterede miljø- og filkilder opløses af Semaphore-serveren, når en opgave kræver nøglen, også ved eksekvering på en ekstern runner. Filkilder skal følge den tilladte hemmelighedsmappe og det dokumenterede værdiformat. En senere opgave kan hente en roteret kildeværdi uden omskrivning af skabelonen. Antag ikke, at en rå nøglefil på runneren implementerer denne serversidemekanisme.

Kan jeg forbinde HashiCorp Vault eller OpenBao?

Ja. Pro understøtter HashiCorp Vault og OpenBao som eksterne hemmelighedskilder. Enterprise tilføjer andre understøttede hemmelighedsintegrationer. Konfigurer udbyderen, og referer til legitimationen via nøglelageret frem for at gemme værdien i Git. Følg udbydervejledningen til autentifikation og hemmelighedsstier, og test jobbet med den tilsigtede legitimation.

Hvad ændres, når jeg roterer legitimationsoplysninger?

Skabeloner refererer til navngivne legitimationsoplysninger frem for at indlejre en separat adgangskode eller nøgle i hvert job. Opdater legitimationsposten eller dens konfigurerede kilde, og kontroller derefter de refererende repositories og inventarer. Test en repræsentativ opgave efter rotation, så autentifikationsfejl opdages før næste planlagte produktionskørsel.

Forhindrer Semaphore enhver hemmelighed i at blive vist i opgaveoutput?

Stol ikke på en universel maskeringsgaranti. En playbook eller et script kan udskrive følsomme variabler, kommandoargumenter eller API-svar i outputtet. Log bevidst, brug værktøjets passende muligheder til håndtering af hemmeligheder, og gennemgå repræsentativt fejloutput såvel som succesoutput. Begræns adgang til logge og eksporterede poster efter deres indhold. Sikker lagring af en værdi styrer ikke i sig selv alt, hvad eksekveringskoden udskriver.

Kan flere job genbruge samme SSH-nøgle eller Vault-adgangskode?

Ja. Giv legitimationen et navn i nøglelageret, og vælg den, hvor repository, inventar eller skabelon kræver typen. Jobbene refererer til den konfigurerede post frem for at have egen kopi i Git. Brug separat legitimation, når målsystemer kræver forskellige identiteter. Se opgaveskabeloner.