2017-10-05 18 views
0

Ich habe eine Anwendung mit Hashicorp Vault, um einen Benutzernamen und ein Passwort geheim zu speichern. Die Anwendung wird auf einer Cloud-Hosting-Plattform bereitgestellt und ein Token als Umgebungsvariable übergeben. Beim Start der Anwendung wird das Geheimnis mit dem Token aus dem Tresor gelesen und zum Öffnen einer Sitzung für einen Remote-Service verwendet. Die Anwendung und Sitzung für den Remote-Dienst sind langlebig. Wenn alles gut geht, startet die Anwendung selten neu und liest daher selten aus dem Tresor. Wenn die Anwendung neu gestartet wird, ist das Token wahrscheinlich abgelaufen, was zu einem Fehler führt.Hashicorp Vault Client Best Practice

Gibt es Best Practices für die Verwendung von Vault in Clients? Die Lebensdauer des Tokens könnte verlängert werden, aber je länger die Lebensdauer, desto kompromittierter die Sicherheit. Die Anwendung könnte die Sitzung mit dem Remote-Dienst jedes Mal neu erstellen, wenn sie benötigt wird, aber dies wäre ineffizient. Gibt es eine andere Alternative, die ich nicht in Betracht ziehe? Irgendwelche Gedanken würden geschätzt werden.

Antwort

1

Sie sollten App Roles anstelle eines einfachen Token verwenden. In diesem Fall erstellen Sie eine Rollen-ID in Ihrer App und stellen dann eine geheime ID für diese Rolle in Ihrer Umgebungsvariablen bereit.

Ihre App kann diese kombinieren, um beim Start ein echtes Token von Vault zu erhalten und dieses Token während der Ausführung regelmäßig zu erneuern.

+0

Vielen Dank für Ihr Feedback – SuperMe