Home Assistant Anleitung how to… Secrets.yaml nutzen

In jeder Home Assistant Konfiguration wird es YAML-Dateien geben, welche auch Zugangsdaten fรผr Integrationen beinhalten. Das unschรถne hieran ist leider, dass das Passwort im Klartext gespeichert wird.

Mit anderen Worten: Erhรคlt jemand Zugriff auf deine YAML-Dateien mit Passwรถrtern drin, hat diese Person auch Zugriff auf diese Dienste (da der notwendige Benutzer ja ebenfalls im Klartext aufgefรผhrt ist). Diese Tatsache ist definitiv nicht schรถn und auch ein (in meinen Augen) absolutes Problem von Home Assistant.

Home Assistant: How to... Kurzanleitungen und Nรผtzliches fรผr Home Assistant!

Es kommt leider immer wieder vor, dass Hilfe suchende Personen in Foren oder Kommentaren ihre Zugangsdaten unbedacht preisgeben, in der Hoffnung Hilfe zu erhalten.

Es ist รผblich, dass in Foren Zeilen aus den YAML-Dateien kopiert werden, damit andere, erfahrene Nutzer Hilfestellung leisten kรถnnen.

Damit man nicht auch aus Versehen Zugangsdaten preisgibt, sollte man fรผr alle Zugangsdaten die Mรถglichkeit nutzen diese in die secrets.yaml auszulagern.

Letztlich stehen in dieser Datei die Zugangsdaten natรผrlich auch im Klartext, jedoch eben in einer expliziten Datei, welche man eben nicht aus Versehen im Internet preisgibt. In der secrets.yaml definiert man Variablen, welche dann an andere Stelle in den YAML-Dateien genutzt werden kรถnnen.

Anstelle also eine Integration รผber YAML mit dem Passwort und Benutzer im Klartext zu haben, wird hier lediglich auf die in der secrets.yaml definierten Variablen verwiesen. Kopiert man nun den YAML-Code der Integration in ein Forum, kann man die Zugangsdaten nicht mehr preisgeben, da nun lediglich auf die Secrets-Variablen verwiesen wird.

Hier ein konkretes Beispiel:


secret_latitude: 50.4711
secret_longtitude: 7.4711

Konfiguration mit Nutzung der secrets.yaml Variable:

homeassistant:
  name: F5c
  latitude: !secret secret_latitude
  longitude: !secret secret_longtitude

Sofern du diese secrets.yaml also noch nicht nutzt, solltest du dies umgehend nachholen!

Kleiner Exkurs: Nicht wenige Smarthome-Fans nutzen Git als Versionierungs-Tool fรผr die Home Assistant Konfiguration. In Git kann man Dateien explizit benennen, welche nicht in der Versionierung erscheinen sollen. Hier sollte die secrets.yaml entsprechend als Ausschluss gewรคhlt werden, damit die „geheimen“ Zugangsdaten nicht im Repository auftauchen und somit etas besser geschรผtzt sind!

Dieser Beitrag ist Teil einer kleinen Beitrags-Serie rund um den hass.io Home Assistant.

4 Gedanken zu „Home Assistant Anleitung how to… Secrets.yaml nutzen“

  1. Hallo Olli,
    danke fรผr den Tipp. Wie macht man das z. B. in der recorder.yaml? In dieser befinden sich die Zugangsdaten fรผr die MariaDB:

    db_url: mysql://homeassistant:passwort@core-mariadb/homeassistant?charset=utf8mb4

    Die recorder.yaml wird wie gewohnt in die configuration.yaml eingebunden:
    recorder: !include recorder.yaml

    Servus
    Peter

    Antworten
    • Hallo Peter,

      du kannst die gesamte URL in der secrets.yaml speichern anstelle nur der Zugangsdaten. Und dieses Secret kannst du dann in der recorder.yaml nutzen

      VG
      Olli

      Antworten
    • Die Datei secrets.yaml muss nicht manuell eingebunden werden! Es genรผgt diese im „Hauptordner“, also dort, wo auch die configuration.yaml liegt, abzuspeichern!

      Antworten

Schreibe einen Kommentar