Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Ottieni un valore segreto di Secrets Manager usando Go con caching lato client
Quando si recupera un segreto, è possibile utilizzare il componente di caching basato su Go di Secrets Manager per memorizzarlo nella cache per un uso futuro. Il recupero di un segreto memorizzato nella cache è più veloce rispetto al recupero da Secrets Manager. Poiché la chiamata a Secrets Manager comporta un costoAPIs, l'utilizzo di una cache può ridurre i costi. Per tutti i modi in cui puoi recuperare i segreti, vedi Ottieni segreti.
La politica della cache è Least Recently Used (LRU), quindi quando la cache deve eliminare un segreto, scarta il segreto usato meno di recente. Di default, la cache aggiorna i segreti ogni ora. È possibile configurare la frequenza con cui il segreto viene aggiornato nella cache ed è possibile collegarsi al recupero del segreto per aggiungere altre funzionalità.
La cache non impone la rimozione di oggetti inutili (garbage collection) una volta liberati i riferimenti alla cache. L'implementazione della cache non include l'invalidazione della cache. L'implementazione della cache è incentrata sulla cache stessa e non è rafforzata o focalizzata sulla sicurezza. Se hai bisogno di un livello di sicurezza aggiuntivo, come la crittografia degli elementi nella cache, usa le interfacce e i metodi astratti forniti.
Per usare il componente, devi disporre dei seguenti elementi:
-
AWS SDKper Go. Per informazioni, consulta AWS SDKs.
Per scaricare il codice sorgente, consulta Secrets Manager Go caching client
Per configurare un ambiente di sviluppo Go, consulta Introduzione a Golang
Autorizzazioni richieste:
secretsmanager:DescribeSecret
secretsmanager:GetSecretValue
Per ulteriori informazioni, consulta Riferimento per le autorizzazioni.
Documentazione di riferimento
Esempio Recupero di un segreto
L'esempio di codice riportato di seguito mostra una funzione Lambda che recupera un segreto.
package main import ( "github.com/aws/aws-lambda-go/lambda" "github.com/aws/aws-secretsmanager-caching-go/secretcache" ) var ( secretCache, _ = secretcache.New() ) func HandleRequest(secretId string) string { result, _ := secretCache.GetSecretString(secretId)
// Use the secret, return success
} func main() { lambda. Start( HandleRequest) }