Ich bin etwas verwirrt über das gesamte Windows-Dateisicherheitsschema. Ich habe einen Unix-Hintergrund, daher verstehe ich die Beziehung zwischen den Dateiberechtigungen / Sicherheitseinstellungen und den Attributen nicht vollständig. Insbesondere schreibgeschützt, die eine Datei haben kann.
Wenn ich mich beispielsweise als Administrator in meiner Box anmelde und über eine Datei verfüge, die den Administratoren die vollständige Kontrolle ermöglicht, aber über ein schreibgeschütztes Attribut verfügt, bedeutet dies, dass ich nicht in diese Datei schreiben kann? Gibt es eine Möglichkeit, außer das schreibgeschützte Attribut zu entfernen, mit dem ich in Dateien schreiben kann, über die ich angeblich die volle Kontrolle habe? Wenn nicht, was ist der Vorteil einer vollen Kontrolle, wenn Sie nicht wirklich die volle Kontrolle haben?
quelle
Antworten:
Dateiberechtigungen bestimmen, welchen Zugriff Sie auf eine Datei haben - so wie es sich anhört. Vollzugriff ermöglicht das Erstellen, Löschen, Anhängen, Ändern von Berechtigungen, Ändern von Attributen usw.
Dateien und Ordner können zusätzliche Attribute haben, ähnlich wie Dateien auf den meisten * nix-Dateisystemen. Als Beispiel kommt "Hidden" auf beiden Plattformen in den Sinn.
Unter Windows gehören zu den zusätzlichen Attributen System, Nur-Lesen, Archivieren, Verschlüsseln und Komprimieren. Wenn Sie Vollzugriff haben (oder Änderungen vornehmen), können Sie diese Attribute ändern. Wie Sie jedoch festgestellt haben, ist eine schreibgeschützte Datei auch für Personen mit Vollzugriff schreibgeschützt. Die vollständige Kontrolle gibt Ihnen die Möglichkeit, die Attribute einer Datei zu ändern, überschreibt sie jedoch nicht automatisch, so als würde
ls
dem Root-Benutzer auf * nix standardmäßig keine versteckte Datei angezeigt.quelle
Eine Berechtigung ist eine Sicherheitskontrolle. Ein Attribut gilt unabhängig vom Sicherheitsprinzipal, der die Operation versucht.
Es gibt weit mehr Attribute als an der Eingabeaufforderung angezeigt werden. Dazu gehören, wenn die Datei eine Verknüpfung, verschlüsselt, ein Verzeichnis (ein Dateityp) und eine Integrität (niedrig, mittel oder hoch) ist.
Dateiattributkonstanten
http://msdn.microsoft.com/en-us/library/windows/desktop/gg258117%28v=vs.85%29.aspx
quelle
Ich werde eine längere Antwort geben, aber im Allgemeinen handelt es sich bei den Attributen, auf die Sie sich beziehen, um ältere Einstellungen für eine Datei aus der Zeit des DOS-FAT-Dateisystems. FAT speichert diese Attribute als Teil der Dateisystemverzeichniseinträge für eine Datei. NTFS verfügt über einen eigenen Satz von Attributen, die die älteren Attribute kapseln. Standardmäßig kann jeder Benutzer mit Dateizugriff diese ändern und ein versehentliches Überschreiben von Daten verhindern.
Berechtigungen sind NTFS-spezifisch und Änderungen an diesen Berechtigungen können auf Benutzerbasis gesteuert werden (sodass ein Benutzer nicht von schreibgeschützt auf beschreibbar wechseln kann). Insbesondere wenn Sie sich den Befehl attrib ansehen (der sowohl ältere als auch die neuen Attributzusätze wie die Integrität in späteren Versionen von Windows anzeigt), ist es möglich, dass in den Berechtigungen nur Lesezugriff festgelegt wurde, in den Attributen jedoch keine Lesezugriffsberechtigung festgelegt wurde. Es ist auch interessant (wenn auch nicht wichtig) zu verstehen, dass es aufgrund der Abstraktion technisch möglich ist, die Legacy-Attribute (die im NTFS-Attribut $ standard_information gespeichert sind) zu aktivieren, ohne dass sie notwendigerweise in der normalen GUI angezeigt werden.
Insbesondere können Sie mit den Vollzugriffsberechtigungen alle NTFS-Berechtigungen ändern. Durch das Festlegen des schreibgeschützten Attributs werden Änderungen verhindert, bis es entfernt wird.
FAT-Attribute haben unter Windows Vorrang vor NTFS-Attributen.
quelle
in general attributes are legacy settings
- Haben Sie eine Quelle dafür, weil ich diese Aussage für falsch halte? Sie sind kostenlos für Dateisystemberechtigungen - sie wurden nicht ersetzt oder ersetzt. In den Standardberechtigungen ist nichts enthalten, was die Funktionalität von Hidden, Archive oder System ersetzt.Any user can modify them and can be used to prevent accidental overwrites of data.
Auch das ist sachlich falsch. Nur Benutzer mit "Attribut schreiben" in eine Datei oder ein Verzeichnis können die Attribute für dieses Objekt ändern.