Sehen Sie sich dieses kurze Video an , in dem die einzelnen in snaps verfügbaren Confinement-Modelle, die Gründe --classic
und den Anwendungsfall erläutert werden.
Quellen : Die folgende Dokumentation stammt aus snapcraft.io: Confinement Policies .
streng
Dies ist die Standardsicherheitsrichtlinie für Snaps. Der Snap verfügt nur in seinem eigenen Installationsbereich und in ausgewählten Bereichen über Lese- und / oder Schreibrechte. Es hat Zugriff auf Bibliotheken, die es bündelt und / oder die vom Core- oder Ubuntu-Core-Snap bereitgestellt werden. Erweiterte Rechte können für Schnittstellen gewährt werden, die entweder bei der Installation oder vom Benutzer mit dem Befehl snap connect verbunden werden . Beispielsweise gewährt die Home-Schnittstelle Leserechte im Home-Bereich des Benutzers.
Durch die strikte Beschränkung erhalten Sie die folgenden lesbaren und / oder beschreibbaren Pfade:
- / snap / snapname / revision (schreibgeschützt, Snap-Installationspfad)
- / var / snap / snapname / revision (Lesen / Schreiben, revisionsbezogene Daten)
- / var / snap / snapname / common (Lesen / Schreiben, gemeinsame Daten)
- / home / $ USER / snap / snapname / revision (lesen / schreiben, Benutzerdaten pro Revision)
- / home / $ USER / snap / snapname / common (Lesen / Schreiben, gemeinsame Benutzerdaten)
In der Liste der Umgebungsvariablen finden Sie weitere Informationen dazu, was für einen streng begrenzten Snap sichtbar ist und wie Sie auf eine Shell innerhalb des begrenzten Bereichs eines Snaps zugreifen können.
Devmode
Der Entwicklermodus, auch als Devmode bezeichnet, verwendet dieselben Sicherheitsrichtlinien wie die strikte Beschränkung, aber Sicherheitsverweigerungen werden in Warnungen umgewandelt /var/log/syslog
(siehe Debuggen ). Dies ist nützlich, wenn Sie eine Anwendung abfangen, um festzustellen, welche Schnittstellen deklariert werden müssen. Snaps im Entwicklermodus können nicht in den Stable- und Candidate-Store- Channels freigegeben werden .
klassisch
Ein Klick in die klassische Beschränkung verhält sich wie eine traditionell gepackte Anwendung mit vollem Zugriff auf das System. Im Gegensatz zu "strict" und "devmode" ist ein klassischer Snap "/" das "/" des Host-Systems und nicht das "/" des Core-Snaps. Snaps, die diese vollständig geöffnete Sicherheitsrichtlinie verwenden, werden im Store manuell überprüft und sind nur auf Systemen zulässig, auf denen snapd auf einer herkömmlichen Linux-Distribution installiert ist , im Gegensatz zum Systemstart von einem Ubuntu Core- Image. Sie können in allen Filialkanälen veröffentlicht werden .
--classic
) zu installieren , aber Snap-Berichteerror: cannot install "vscode": snap not found
. Konnten Sie es installieren?