Hantera hemligheter
Lägg till hemligheter i ett valv, läs och ändra deras värden, och radera, återställ eller rensa dem.
Kräver: secretvault/writeSecrets
Hemligheter hanteras på valvets flik Hemligheter. Att ändra dem kräver
secretvault/writeSecrets på valvet; att visa ett värde kräver secretvault/readSecrets — se
Behörigheter.
Lägg till en hemlighet
Välj Lägg till hemlighet på fliken Hemligheter och fyll i:
- Namn — bokstäver, siffror och bindestreck, högst 127 tecken. Det måste vara unikt bland valvets hemligheter som inte är raderade.
- Värde — själva hemligheten. Den krypteras innan den sparas.
- Innehållstyp (valfritt) — en ledtråd till den som läser, till exempel
text/plainellerapplication/json. - Aktiverad — på som standard. En inaktiverad hemlighet kan inte läsas, varken av personer eller arbetslaster.
Välj Skapa hemlighet. Värdet blir version 1.
Taggar och datum för giltig från och utgång kan sättas via API:t; portalen visar dem men redigerar dem inte. Ett utgångsdatum är bara information: plattformen lämnar ut värdet även efter det.
Visa en hemlighet
Listan visar varje hemlighets namn, innehållstyp, status, aktuell version och när den senast uppdaterades. Visa detaljer öppnar hemligheten: status, aktuell version, innehållstyp, tidsstämplar, utgång och taggar, Hemligt värde — som bara visas när du ber om det och registreras i valvets aktivitetslogg — och fliken Versioner, som listar varje version som Aktiv eller Inaktiv. Äldre versioners värden kan läsas med CLI:t eller API:t.
Ändra ett värde
Redigera öppnar hemligheten med dess aktuella värde. När du sparar skapas en ny version, som blir aktuell; den tidigare blir inaktiv men går fortfarande att läsa. Reglaget Aktiverad i samma vy inaktiverar hemligheten, och även det skapar en ny version när du sparar.
Portalen kan inte aktivera en inaktiverad hemlighet igen: dess rad erbjuder inte längre
Redigera. Använd CLI:t — stsh secret set <namn> --stdin -v <valv> sparar värdet du anger som
en ny, aktiverad version — eller API:t.
Arbetslaster läser hemligheter när deras poddar startar, så en körande arbetslast behåller det gamla värdet tills den startar om — se Använd hemligheter i arbetslaster.
Radera, återställ och rensa
- Att radera en hemlighet tar bort den ur listan men sparar den, med alla dess versioner. Visa raderade listar raderade hemligheter igen.
- Att återställa en raderad hemlighet ger tillbaka den som den var.
- Att rensa tar bort en raderad hemlighet permanent. Det tillåts 90 dagar efter att hemligheten raderades och nekas dessförinnan. Ingenting rensar raderade hemligheter automatiskt.
Detta gäller oavsett vad valvets inställningar för mjuk radering, kvarhållning och
rensningsskydd säger; plattformen tillämpar dem inte ännu. Att radera och rensa kräver dessutom
secretvault/delete, som rollerna Owner, Contributor och Secrets Writer har.
Återställ och rensa med CLI:t:
stsh secret list --vault my-vault
stsh secret recover my-secret --vault my-vault
stsh secret purge my-secret --vault my-vaultAtt radera själva valvet tar bort alla hemligheter i det på en gång, även raderade — se Radera ett valv.
Hemligheter som skapats av en mall
En blueprint-deploy eller en mallbaserad container instance kan skapa hemligheter i sitt valv. De märks Mallhanterad, och deras detaljer visar Mall, Ursprung och, där det gäller, vad de är Härledd från.
- Ett genererat värde, till exempel ett lösenord som skapades vid deploy, kan ändras efter att du bekräftat Ändra en mallhanterad hemlighet?. Den körande tjänsten följer inte med direkt: varje komponent hämtar det nya värdet nästa gång den startar om. Vissa mallar stöder inte alls att ett genererat värde ändras, och säger det.
- Ett härlett värde, till exempel en anslutningssträng som byggts av ett genererat lösenord, kan inte redigeras. Ändra i stället värdet det härleds från.
Med CLI:t
stsh secret list --vault my-vault
stsh secret set api-key --stdin --vault my-vault # värdet från stdin, aldrig i skalets historik
stsh secret get api-key --vault my-vault --raw
stsh secret get api-key --vault my-vault --version 2
stsh secret versions api-key --vault my-vault
stsh secret delete api-key --vault my-vaultMed API:t
Varje åtgärd är ett HTTP-anrop under valvets secrets-sökväg. Att sätta ett värde skapar en
ny version:
PUT https://api.example.com/boundaries/<boundary-id>/resourcegroups/my-resource-group/resources/secretvaults/my-vault/secrets/api-key
Content-Type: application/json
{ "value": "example-value", "contentType": "text/plain" }Att läsa värdet kräver secretvault/readSecrets:
GET https://api.example.com/boundaries/<boundary-id>/resourcegroups/my-resource-group/resources/secretvaults/my-vault/secrets/api-keyEn Reader ser hemligheten i valvets lista men nekas dess värde:
GET https://api.example.com/boundaries/<boundary-id>/resourcegroups/my-resource-group/resources/secretvaults/my-vault/secretsGET https://api.example.com/boundaries/<boundary-id>/resourcegroups/my-resource-group/resources/secretvaults/my-vault/secrets/api-key